You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从ListString提取数据匹配ComboBox选中项后填入TextBox

实现ComboBox与TextBox联动的解决方案

具体实现步骤如下:

  • 第一步:定义类级别全局映射字典,用于存储序号和对应要展示在TextBox的内容映射关系
// 放在窗体类的全局位置,不要写在方法内部
Dictionary<string, string> workOrderMap = new Dictionary<string, string>();
  • 第二步:修改现有分割逻辑,同时填充映射字典和ComboBox控件
// 假设lsdata是你将原逗号分隔字符串按,分割后得到的字符串数组
if (lsdata[i].StartsWith("XX"))
{
    string serialNum = lsdata[i - 1];
    // 把XX前缀替换为DD得到目标显示内容
    string targetContent = lsdata[i].Replace("XX", "DD");
    // 存入映射字典
    workOrderMap[serialNum] = targetContent;
    // 向ComboBox添加序号选项
    cbWorkOrder2.Items.Add(serialNum);
}
  • 第三步:给ComboBox添加SelectedIndexChanged选中项变化事件,选中时读取字典赋值给TextBox
private void cbWorkOrder2_SelectedIndexChanged(object sender, EventArgs e)
{
    if (cbWorkOrder2.SelectedItem != null)
    {
        string selectedSerial = cbWorkOrder2.SelectedItem.ToString();
        // 用TryGetValue避免不存在的key引发报错
        if (workOrderMap.TryGetValue(selectedSerial, out string showText))
        {
            // 替换为你自己的TextBox控件名
            yourTextBox.Text = showText;
        }
        else
        {
            yourTextBox.Text = string.Empty;
        }
    }
}

如果你使用的是WPF框架,只需要把ComboBox的事件替换为SelectionChanged即可,映射逻辑完全通用。

内容的提问来源于stack exchange,提问作者mini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 01:54:03