如何解决数据网格中自动生成列的 WPF 下拉列表
如何在单击特定表格列的元素时创建下拉列表,您可以在其中为该单元格选择一个元素?列是自动生成的。
解决方法
xaml/wpf 中的 Combobox 是这样使用的:
selectedId
ComboBoxItems 本质上是下拉部分。您可以根据需要添加任意数量。
在您的后端 (c#) 中,您可以在触发“SelectionChanged”事件后立即获取所选值。获取选定值的代码可以通过多种方式完成。示例:
<ComboBox x:Name="some Name" SelectionChanged="comboboxChanged">
<ComboBoxItem>The Content of your Combobox</ComboBoxItem>
</Combobox>
虽然上面的代码是静态的。例如,动态生成这些元素可能看起来像这样。 自动生成时,为事件使用内联函数很容易。
private void comboboxChanged(object sender,SelectionChangedEventArgs e){
string comboboxvalue = comboboxname.Text;
//Then set associated textblock or label
labelname.Content = comboboxvalue;
}
Labelname 是您要设置的标签的名称。在该循环中,您需要实现一种方法,为每个框提供唯一名称并在其中获取相关标签的名称。您必须自己弄清楚,因为我不知道究竟是如何生成的,什么是静态的,什么是静态的。
您还需要将动态创建的组合框添加到列表面板或网格或您正在使用的任何内容中。其工作原理如下:
for (int i = 0; i < 10; i++){
ComboBox comboboxname = new ComboBox();
comboboxname.SelectionChanged += (ss,ee) { string comboBoxValue = comboboxname.Text; labelname.Content = comboBoxValue;}
}
只需将其添加到“for”循环中即可。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。