wpf ComboBox绑定数据及变更事件

定义ComboBox,以及SelectionChanged事件

cs 复制代码
 <ComboBox x:Name="cmb_radius" Height="30" Width="65" FontSize="15" 
DisplayMemberPath="Value" SelectedValuePath="Key" HorizontalAlignment="Center"
VerticalAlignment="Center" Margin="3" SelectionChanged="cmb_radius_SelectionChanged"/>

实体类及数据绑定

cs 复制代码
public class ComboBoxEntity
{
    public string Key { get; set; }
    public string Value { get; set; }
}

cmb_radius.Items.Clear();
List<ComboBoxEntity> lcb = new List<ComboBoxEntity>();
for (int i = 0; i < M_Radius.Columns.Count; i++)
{
    ComboBoxEntity cbe = new ComboBoxEntity();
    cbe.Key = M_Radius.Columns[i].ColumnName;
    cbe.Value = M_Radius.Rows[0][i].ToString();
    
    // 添加ComboBoxEntity对象到列表中
    lcb.Add(cbe);
}

// 设置cmb_radius的ItemsSource为lcb
cmb_radius.ItemsSource = lcb;

SelectionChanged事件的处理

cs 复制代码
private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    ComboBox comboBox = (ComboBox)sender;
    // 获取选中的项
    object selectedValue = comboBox.SelectedItem;

    // 需要的业务逻辑处理
    if (selectedValue != null)
    {
         string cbKey = (selectedValue as ComboBoxEntity).Key;
         string cbValue = (selectedValue as ComboBoxEntity).Value;
    }
    //...
}
相关推荐
唐青枫3 分钟前
C#.NET MemoryCache 深入解析:本地缓存机制与最佳实践
c#·.net
拾荒的小海螺1 小时前
C#:OpenCvSharp 实现图像处理的技术指南
开发语言·图像处理·c#
张人玉7 小时前
C#WPF UI路由事件:事件冒泡与隧道机制
ui·c#·wpf
雪域迷影9 小时前
C#中通过get请求获取api.open-meteo.com网站的天气数据
开发语言·http·c#·get
yue0089 小时前
C#类继承
java·开发语言·c#
AI柠檬10 小时前
几种排序算法的实现和性能比较
数据结构·算法·c#·排序算法
code bean10 小时前
【C#】Channel<T>:现代 .NET 中的异步生产者-消费者模型详解
c#
yue00810 小时前
C# XML文件的读写V2.0
xml·开发语言·c#
睡前要喝豆奶粉11 小时前
.NET Core Web API开发需引入的三个基本依赖配置说明
oracle·c#·.netcore
Aevget11 小时前
DevExpress WPF v25.2新功能预览 - 支持将JetBrains Rider与报表设计器集成
.net·wpf·界面控件·devexpress·ui开发