gpt4 book ai didi

wpf - 选择更改时 DataGridComboBoxColumn 丢失其内容

转载 作者:行者123 更新时间:2023-12-04 16:02:35 24 4
gpt4 key购买 nike

当我单击 DataGridComboBoxColumn 中的单元格时,组合框变得可见,我可以选择项目。当我选择了一个项目时,它在顶部可见。但是,当单元格又名 ComboBox 因为我单击 DataGrid 中的不同内容而失去焦点时,我之前选择的单元格中不再有可见的项目/文本。

如何保留该选择/选定的文本?

那是我的代码:

<DataGridComboBoxColumn
Width="*"
Header="Monday"
DisplayMemberPath="SchoolclassName"
SelectedValueBinding="{Binding SchoolclassCodeMonday}"
ItemsSource="{Binding Source={StaticResource ClassCodes}}">

<DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="IsSynchronizedWithCurrentItem" Value="False" />
<Setter Property="ItemsSource"
Value="{Binding Source={StaticResource ClassCodes}}" />
</Style>
</DataGridComboBoxColumn.ElementStyle>

<DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource"
Value="{Binding Source={StaticResource ClassCodes}}" />
<Setter Property="IsDropDownOpen" Value="True" />
</Style>
</DataGridComboBoxColumn.EditingElementStyle>
</DataGridComboBoxColumn>

我的问题似乎有解决方案: http://wpf.codeplex.com/Thread/View.aspx?ThreadId=46627 (滚动到底部)但我无法将解决方案转移到我的问题上。因为我的模型设置完全不同。

类(class)名称 是 Schoolclass.cs 中的字符串属性
SchoolclassCodeMonday 是 TimeTable.cs 中的字符串属性
类代码 又名 学校类(class)代码 是 ObservableCollection|Schoolclass| 类型的属性

有人知道如何修复我的绑定(bind)吗?

最佳答案

我知道它可能不再需要,但也许它会帮助其他人。
您的 ComboBox 在更改时是否不需要更新绑定(bind)?例如

SelectedValueBinding="{Binding SchoolclassCodeMonday}"

将会:
SelectedValueBinding="{Binding SchoolclassCodeMonday, 
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"

还要确保当属性从可观察集合上的代码更改时发出通知。

关于wpf - 选择更改时 DataGridComboBoxColumn 丢失其内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3080913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com