修复一个多选框的bug

This commit is contained in:
艾竹
2022-12-02 08:44:40 +08:00
parent 503b92f40e
commit 1abeefcc66
2 changed files with 11 additions and 8 deletions

View File

@@ -9,7 +9,6 @@
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/> <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/> <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
<Setter Property="ScrollViewer.CanContentScroll" Value="True"/> <Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
<Setter Property="IsSynchronizedWithCurrentItem" Value="True"/>
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
<ControlTemplate TargetType="ComboBox"> <ControlTemplate TargetType="ComboBox">

View File

@@ -100,6 +100,8 @@ namespace AIStudio.Wpf.DiagramHelper.Controls
{ {
MultiSelectComboBox control = (MultiSelectComboBox)d; MultiSelectComboBox control = (MultiSelectComboBox)d;
control.DisplayInControl(); control.DisplayInControl();
control.SelectNodes();
control.SetText();
} }
private static void OnSelectedItemsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) private static void OnSelectedItemsChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
@@ -238,13 +240,15 @@ namespace AIStudio.Wpf.DiagramHelper.Controls
StringBuilder displayText = new StringBuilder(); StringBuilder displayText = new StringBuilder();
foreach (Node s in _nodeList) foreach (Node s in _nodeList)
{ {
if (s.IsSelected == true && s.Object.ToString() == "All") //不使用ALl来显示
{ //if (s.IsSelected == true && s.Object.ToString() == "All")
displayText = new StringBuilder(); //{
displayText.Append("All"); // displayText = new StringBuilder();
break; // displayText.Append("All");
} // break;
else if (s.IsSelected == true && s.Object.ToString() != "All") //}
//else
if (s.IsSelected == true && s.Object.ToString() != "All")
{ {
displayText.Append(s.Object); displayText.Append(s.Object);
displayText.Append(','); displayText.Append(',');