我有一个定制风格的Combobox工作正常.它放在usercontrol中并绑定到数据结构.我使用DisplayMemberPath只显示Combobox TextBox中的一个元素.ComboBox样式取自MSDN并多次使用.所以这里没有显示.
<UserControl x:Class="wpf.projext1.MyComboBox"
x:Name="MyControl"
...
<ComboBox Style="{StaticResource ComboBoxStyle}"
Text="{Binding ElementName=MyControl, Path=Text}"
IsEditable="True"
IsTextSearchEnabled="False"
StaysOpenOnEdit="True"
ItemsSource="{Binding ElementName=MyControl, Path=MyItemsSource}"
DisplayMemberPath="Name"
</ComboBox
Run Code Online (Sandbox Code Playgroud)
我得到以下令人讨厌的错误消息填充输出窗口:
System.Windows.Data Error: 25 : Both 'ContentTemplate' and 'ContentTemplateSelector' are set; 'ContentTemplateSelector' will be ignored. ComboBoxItem:'ComboBoxItem' (Name='')
Run Code Online (Sandbox Code Playgroud)
如果我遗漏了
DisplayMemberPath="Name"
Run Code Online (Sandbox Code Playgroud)
...没有显示关于错误25的调试输出.但我绝对需要DiplayMemberPath ="名字"!你有想法解决这个问题吗?
当我从一个集合中删除项目时,.net方面发生了什么?对删除项的引用是否仍然有效?
class myObject
{
int i = 1;
}
...
public ObservableCollection<myObject> myObjects = new ObservableCollection<myObject>();
...
myObjects.Add(new myObject());
myObjects.Add(new myObject());
myObject removedItem = myObjects[1];
myObjects.RemoveAt(1);
// removedItem still valid ?
Run Code Online (Sandbox Code Playgroud)