Winform中ComBox中SelectedValue和SelectedText的值不是同一组数据

14 篇文章 0 订阅

界面:
在这里插入图片描述

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ComBoxDemoWindowsFormsApp14
{
    public partial class Form1 : Form
    {
        
        public Form1()
        {
            InitializeComponent();

            initComBox();
            initData();
        }

        public void initComBox() 
        {
            List<ComBoboxSource> my_room_sourceList = new List<ComBoboxSource>()
                    {
                        new ComBoboxSource()
                        {
                            text = "请选择房间",
                            value = "-1"
                        }
                    };

            //for (int i = 1; i < 60; i++)
            //{
            //    ComBoboxSource my_source = new ComBoboxSource();
            //    my_source.text = "text" + i.ToString();
            //    my_source.value = "value" + i.ToString();
            //    my_room_sourceList.Add(my_source);
            //}

            ComBoboxSource my_source1 = new ComBoboxSource();
            my_source1.text = "编程测试房间";
            my_source1.value = "c29f738261be49df8624d93757a19801";
            my_room_sourceList.Add(my_source1);

            ComBoboxSource my_source2 = new ComBoboxSource();
            my_source2.text = "任泽明测试间";
            my_source2.value = "5aad0a7b69b14818a20074ea9769c1a3";
            my_room_sourceList.Add(my_source2);

            ComBoboxSource my_source3 = new ComBoboxSource();
            my_source3.text = "AI测试房间";
            my_source3.value = "c5c0e99a8277492eb1bd90a3ee207599";
            my_room_sourceList.Add(my_source3);

            ComBoboxSource my_source4 = new ComBoboxSource();
            my_source4.text = "机房";
            my_source4.value = "24655488d29d4a30be7f8ffaff43973f";
            my_room_sourceList.Add(my_source4);

            ComBoboxSource my_source5 = new ComBoboxSource();
            my_source5.text = "Bug测试";
            my_source5.value = "256738b72aed4d9983593ed481ba0054";
            my_room_sourceList.Add(my_source5);

            ComBoboxSource my_source6 = new ComBoboxSource();
            my_source6.text = "厨房";
            my_source6.value = "77c64891ab4f4184b4a3b0072f934393";
            my_room_sourceList.Add(my_source6);

            ComBoboxSource my_source7 = new ComBoboxSource();
            my_source7.text = "卧室333";
            my_source7.value = "ceb1e151f0ef41b5ade19016afd1b3d6";
            my_room_sourceList.Add(my_source7);

            ComBoboxSource my_source8 = new ComBoboxSource();
            my_source8.text = "卧室111";
            my_source8.value = "6d696c51280a4c68bcad66896f721f51";
            my_room_sourceList.Add(my_source8);

            ComBoboxSource my_source9 = new ComBoboxSource();
            my_source9.text = "房间11111";
            my_source9.value = "a8eac57824494f419cd0c4f0049d70e5";
            my_room_sourceList.Add(my_source9);

            ComBoboxSource my_source10 = new ComBoboxSource();
            my_source10.text = "测试房间1011111";
            my_source10.value = "06d6e171ae2b4189b049ce2633baab0b";
            my_room_sourceList.Add(my_source10);

            ComBoboxSource my_source11 = new ComBoboxSource();
            my_source11.text = "客厅1111111111111111111";
            my_source11.value = "e0e539ed79ee41819ce8a1ef96dfa03e";
            my_room_sourceList.Add(my_source11);

            ComBoboxSource my_source12 = new ComBoboxSource();
            my_source12.text = "测试房间";
            my_source12.value = "a5d4ee04d14e406a8f19c36ce02e08fc";
            my_room_sourceList.Add(my_source12);

            ComBoboxSource my_source13 = new ComBoboxSource();
            my_source13.text = "测试房间一";
            my_source13.value = "f51cd16256524135a35dd845a4bbd3d8";
            my_room_sourceList.Add(my_source13);

            ComBoboxSource my_source14 = new ComBoboxSource();
            my_source14.text = "测试房间二";
            my_source14.value = "9938fad639874b50a35549e8819c7106";
            my_room_sourceList.Add(my_source14);

            ComBoboxSource my_source15 = new ComBoboxSource();
            my_source15.text = "测试房间三";
            my_source15.value = "21b0cd77dbbd45e1a5cbf1aa8f30f2cb";
            my_room_sourceList.Add(my_source15);

            ComBoboxSource my_source16 = new ComBoboxSource();
            my_source16.text = "测试房间四";
            my_source16.value = "2bfb784b94a74cd7bb3c06c6df8ab7cb";
            my_room_sourceList.Add(my_source16);

            ComBoboxSource my_source17 = new ComBoboxSource();
            my_source17.text = "测试房间五";
            my_source17.value = "8e1f056f38ef49548a81bcb629a556e4";
            my_room_sourceList.Add(my_source17);

            ComBoboxSource my_source18 = new ComBoboxSource();
            my_source18.text = "测试房间六";
            my_source18.value = "6628999809cf4f9689f24997ca358454";
            my_room_sourceList.Add(my_source18);

            ComBoboxSource my_source19 = new ComBoboxSource();
            my_source19.text = "客厅";
            my_source19.value = "d893461611e04a66a4e5455c6a8944b0";
            my_room_sourceList.Add(my_source19);

            ComBoboxSource my_source20 = new ComBoboxSource();
            my_source20.text = "客厅---1";
            my_source20.value = "b0d5d9eaa06f4438861f97a92f8d0178";
            my_room_sourceList.Add(my_source20);

            ComBoboxSource my_source21 = new ComBoboxSource();
            my_source21.text = "客厅11111";
            my_source21.value = "81fcccecd56d4acfa443d85f4649d31f";
            my_room_sourceList.Add(my_source21);

            ComBoboxSource my_source22 = new ComBoboxSource();
            my_source22.text = "客厅";
            my_source22.value = "ecf7f3e4e8d141a8b60f2ddffc63f0bb";
            my_room_sourceList.Add(my_source22);

            ComBoboxSource my_source23 = new ComBoboxSource();
            my_source23.text = "测试海康设备";
            my_source23.value = "933701f391f24d68bb6f37af78f80f73";
            my_room_sourceList.Add(my_source23);

            ComBoboxSource my_source24 = new ComBoboxSource();
            my_source24.text = "门厅";
            my_source24.value = "b7708687ccb642748ef3cc16a6ea6c28";
            my_room_sourceList.Add(my_source24);

            ComBoboxSource my_source25 = new ComBoboxSource();
            my_source25.text = "客厅";
            my_source25.value = "f308a637ab884ea28ad4df59c4a6b546";
            my_room_sourceList.Add(my_source25);

            ComBoboxSource my_source26 = new ComBoboxSource();
            my_source26.text = "餐厅";
            my_source26.value = "5fab2d47072144c1a3d98c0a1a620f2f";
            my_room_sourceList.Add(my_source26);

            ComBoboxSource my_source27 = new ComBoboxSource();
            my_source27.text = "影院";
            my_source27.value = "5b26285f13964bb6a0b1953d887e969f";
            my_room_sourceList.Add(my_source27);

            ComBoboxSource my_source28 = new ComBoboxSource();
            my_source28.text = "卧室";
            my_source28.value = "09e7c85e28414bff94f66b208dc2bce0";
            my_room_sourceList.Add(my_source28);

            ComBoboxSource my_source29 = new ComBoboxSource();
            my_source29.text = "茶室";
            my_source29.value = "65ccc23d5eb94dba9452f58856418f78";
            my_room_sourceList.Add(my_source29);

            ComBoboxSource my_source30 = new ComBoboxSource();
            my_source30.text = "机房";
            my_source30.value = "289838ba6aa24a4383e4260e193e4c4f";
            my_room_sourceList.Add(my_source30);

            ComBoboxSource my_source31 = new ComBoboxSource();
            my_source31.text = "空调房间";
            my_source31.value = "5db5744245dc49928ed94a780ae086ca";
            my_room_sourceList.Add(my_source31);

            ComBoboxSource my_source32 = new ComBoboxSource();
            my_source32.text = "LORA设备";
            my_source32.value = "08af6f805d8d4a29bcce9082a30494ca";
            my_room_sourceList.Add(my_source32);

            ComBoboxSource my_source33 = new ComBoboxSource();
            my_source33.text = "新风房间";
            my_source33.value = "45ac3eb1650e48fc9c5de675acd5fe2e";
            my_room_sourceList.Add(my_source33);

            ComBoboxSource my_source34 = new ComBoboxSource();
            my_source34.text = "测试";
            my_source34.value = "41bc719bd15843288573ebd9f798dee9";
            my_room_sourceList.Add(my_source34);

            ComBoboxSource my_source35 = new ComBoboxSource();
            my_source35.text = "RGBW";
            my_source35.value = "7282fd861b304b38b470803b362bb60c";
            my_room_sourceList.Add(my_source35);

            ComBoboxSource my_source36 = new ComBoboxSource();
            my_source36.text = "客厅---3";
            my_source36.value = "082170d8cb9940d8b7195d94fe87ee51";
            my_room_sourceList.Add(my_source36);

            ComBoboxSource my_source37 = new ComBoboxSource();
            my_source37.text = "红外指令测试房间";
            my_source37.value = "4064ffc8273d4ca0a139c3906fc17631";
            my_room_sourceList.Add(my_source37);

            ComBoboxSource my_source38 = new ComBoboxSource();
            my_source38.text = "485指令测试房间";
            my_source38.value = "030920e8fd904c6ebcf1339fcbff7e89";
            my_room_sourceList.Add(my_source38);

            ComBoboxSource my_source39 = new ComBoboxSource();
            my_source39.text = "测试房间1";
            my_source39.value = "8653a5067c5c43b9b9aad02fe81e9f2a";
            my_room_sourceList.Add(my_source39);


            this.cmb_room.DataSource = my_room_sourceList;
            this.cmb_room.DisplayMember = "text";
            this.cmb_room.ValueMember = "value";

            #region ComBox1
            List<ComBoboxSource> my_device_sourceList = new List<ComBoboxSource>()
                    {
                        new ComBoboxSource()
                        {
                            text = "请选择设备",
                            value = "-1"
                        }
                    };


            ComBoboxSource my_device1 = new ComBoboxSource();
            my_device1.text = "设备1";
            my_device1.value = "1";
            my_device_sourceList.Add(my_device1);

            ComBoboxSource my_device2 = new ComBoboxSource();
            my_device2.text = "设备42";
            my_device2.value = "42";
            my_device_sourceList.Add(my_device2);

            ComBoboxSource my_device3 = new ComBoboxSource();
            my_device3.text = "设备3";
            my_device3.value = "3";
            my_device_sourceList.Add(my_device3);

            ComBoboxSource my_device4 = new ComBoboxSource();
            my_device4.text = "设备4";
            my_device4.value = "4";
            my_device_sourceList.Add(my_device4);

            this.comboBox1.DataSource = my_device_sourceList;
            this.comboBox1.DisplayMember = "text";
            this.comboBox1.ValueMember = "value";
            #endregion
        }

        public void initData() 
        {
            cmb_room.SelectedValue = "8653a5067c5c43b9b9aad02fe81e9f2a";

            comboBox1.SelectedValue = "4";
        }
        private void Form1_Load(object sender, EventArgs e)
        {
           
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Console.WriteLine(cmb_room.SelectedValue.ToString());
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Console.WriteLine(comboBox1.SelectedValue.ToString());
        }

        private void comboBox1_SelectedValueChanged(object sender, EventArgs e)
        {
            Console.WriteLine("comboBox1_SelectedValueChanged->"+comboBox1.SelectedValue.ToString());
        }
    }

    /// <summary>
    /// ComboBox数据源类
    /// </summary>
    public class ComBoboxSource
    {
        private string _text;
        public string text
        {
            get
            {
                return _text;
            }
            set
            {
                _text = value;
            }
        }

        private string _value;
        public string value
        {
            get
            {
                return _value;
            }
            set
            {
                _value = value;
            }
        }
        private string _key;
        public string key
        {
            get
            {
                return _key;
            }
            set
            {
                _key = value;
            }
        }
        private string _tootip;
        public string tootip
        {
            get
            {
                return _tootip;
            }
            set
            {
                _tootip = value;
            }
        }


        public ComBoboxSource()
        {

        }
        public ComBoboxSource(string text, string value)
        {
            _text = text;
            _value = value;
        }
    }
}

结论:将DropDownStyle中的属性设置为DropDownList就可以解决这个问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值