• [VS2005]Bug or Design?


    在VS2005以前的版本,如果我们调用下面的逻辑

    // Form中包含一个ComboBox Control。
    public void Form_Load(object sender, EventArgs e)
    {
      
    this.comboBox1.DropDownStyle = DropDownStyle.DropDown; // 注意不是DropDownList.
      this.comboBox1.Items.Add("Test1");
      
    this.comboBox1.Items.Add("Test2");
      
    this.comboBox1.Items.Add("Test3");
      this.comboBox1.Items.Add("Test4");
      
    this.comboBox1.SelectedIndex = 0;
    }


    public void button1_Click(object sender, EventArgs e)
    {
      
    this.comboBox1.Text = "Test"//该项不存在于Items中
      Debug.WriteLine(this.comboBox1.SelectedIndex.ToString());
    }

    返回的结果是-1.因为没有任何一项被选中。

    但是,如果我们在VS2005中运行上面的代码,结果却是0

    这是VS2005的Bug还是它的Design。

    Bug:
        与以前的版本不兼容;
        数据会丢失;(我没有具体试验,在某些情况下,似乎设进取的Text会丢掉)

    Design:
        将SelectedIndex和当前显示的Text分开。(似乎有些牵强,但好像也有些合理性)

    博客园里微软的人很多,有没有能够出面澄清一下。大家也许也会有一些自己的看法。
  • 相关阅读:
    HDU 1097 a hard puzzle
    HDU 4588 Count The Carries
    不想用锐捷怎么办?锐捷出问题|锐捷不能用怎么办?用menohust代替吧
    线段树及其变种的相关资料(不定期更新)
    UVa 10075
    UVa 1301
    UVa 10256
    UVa 1453
    计算几何相关资料+题目推荐(不定期补充)
    UVa 11524
  • 原文地址:https://www.cnblogs.com/Cajon/p/293716.html
Copyright © 2020-2023  润新知