我需要为在后面的代码中创建的ComboBox设置ComboBoxItem的样式。到目前为止,这是我的代码
ComboBox cbo1 = new ComboBox();
cbo1.IsTextSearchEnabled = true;
cbo1.IsEditable = true;
grid1.Children.Add(cbo1);
cbo1.Dispatcher.BeginInvoke(new StyleComboBoxItemDelegate(ref StyleComboBoxItem(cbo1), System.Windows.Threading.DispatcherPriority.Background);
public delegate void StyleComboBoxItemDelegate(ComboBox cbo_tostyle);
public void StyleComboBoxItem(ComboBox cbo_tostyle)
{
//code to style the comboboxitem;
}
我收到以下错误
1. A ref or out argument must be an assignable variable
2. Method name expected
请有人帮助我指出我做错了什么吗?
非常感谢
答案 0 :(得分:1)
StyleComboBoxItem()
“返回”无效,因此通过使用ref StyleComboBoxItem(...)
,您实际上是在尝试创建对void的引用。
你可以:
StyleComboBoxItem()
返回它设置的ComboBox,这样你仍然可以使用它内联不需要参考。
答案 1 :(得分:1)
尝试使用以下任何一种方法:
cbo1.Dispatcher.BeginInvoke(
(Action)(() => StyleComboBoxItem(cbo1)),
System.Windows.Threading.DispatcherPriority.Background);
cbo1.Dispatcher.BeginInvoke(
(Action)(() =>
{
//code to style the comboboxitem;
}),
System.Windows.Threading.DispatcherPriority.Background);