Browse Source

编辑- 字体库 修复 部分预设样式无效果、优化字体下拉框显示速度

OYXH\oyxh 1 year ago
parent
commit
e7dce776a6

+ 7 - 1
PDF Office/CustomControl/CompositeControl/CustomComboControl.xaml

@@ -52,7 +52,13 @@
                         BorderBrush="#FFE2E3E6"
                         BorderThickness="1"
                         ItemTemplate="{StaticResource numberData}"
-                        MaxDropDownHeight="200" />
+                        MaxDropDownHeight="200">
+                        <ComboBox.ItemsPanel>
+                            <ItemsPanelTemplate>
+                                <VirtualizingStackPanel />
+                            </ItemsPanelTemplate>
+                        </ComboBox.ItemsPanel>
+                    </ComboBox>
 
                     <TextBox
                         x:Name="title"

+ 32 - 7
PDF Office/CustomControl/CompositeControl/CustomComboControl.xaml.cs

@@ -37,9 +37,22 @@ namespace PDF_Master.CustomControl.CompositeControl
         //}
 
         //字符串类型的值
-        public string ValueStr { get; private set; }
-
-        //数字类型的值
+        //public string ValueStr { get;  set; }
+        private string valueStr;
+
+        public string ValueStr
+        {
+            get
+            {
+                return valueStr;
+            }
+            set
+            {
+                SetProperty(ref valueStr, value);
+            }
+        }
+
+        //数字类型的值
         public double Value { get; private set; }
 
         //public string Content { get; private set; }
@@ -161,8 +174,10 @@ namespace PDF_Master.CustomControl.CompositeControl
             {
                 title.Text = item.Content;
                 Trace.WriteLine("comBox_SelectionChanged" + title.Text);
-                SelectedIndex = comBox.SelectedIndex;
-
+                if (SelectedIndex != comBox.SelectedIndex)
+                {
+                    SelectedIndex = comBox.SelectedIndex;
+                }
                 if (IsValueContent == false)
                 {
                     Value = item.Value;
@@ -387,8 +402,18 @@ namespace PDF_Master.CustomControl.CompositeControl
                 if (control.comBox.Items != null && control.comBox.Items.Count > 0 )
                 {
                     control.comBox.SelectedIndex = selectedIndex;
-                    if (control.comBox.SelectedItem != null)
-                        control.SelectedItems = (ComboDataItem)control.comBox.SelectedItem;
+                    if (control.comBox.SelectedItem != null)
+                    {
+                        if(control.comBox.SelectedItem is ComboDataItem comboDataItem)
+                        {
+                            bool isEqual = EqualityComparer<ComboDataItem>.Default.Equals(comboDataItem, control.SelectedItems);
+                            if (isEqual==false)
+                            {
+                                control.SelectedItems = (ComboDataItem)control.comBox.SelectedItem;
+                            }
+                        }
+                    }
+                        
                   
                 }
                 control.UpdateSelectedIndex();

+ 1 - 1
PDF Office/Views/PropertyPanel/PDFEdit/TextEditProperty.xaml

@@ -77,7 +77,7 @@
                                 Name="SampleText"
                                 HorizontalAlignment="Center"
                                 VerticalAlignment="Center"
-                                FontFamily="{Binding CurrentFontFamily.ValueStr}"
+                                FontFamily="{Binding CurrentFontFamily.Content}"
                                 FontSize="{Binding CurrentFontSize.Value}"
                                 FontStyle="{Binding FontStyleItem}"
                                 FontWeight="{Binding FontWeightItem}"