争论被设置为空

时间:2013-12-23 22:56:22

标签: c# wpf

以下是来自ComboBox

的类的代码片段
private string _selected;

public void SetSelected(string color)
{
    if (!IsLoaded)
    {   
        _selected = color;
        return;
    }

    foreach (ComboBoxItem each in Items)
    {
        if (each.Tag as string == color)
        {
            each.IsSelected = true;
            break;
        }
    }
}

如果执行到达foreach循环,color,无论我传递给SetSelected的参数是什么,都是null

这让我完全难过。有什么想法吗?

修改

我将代码更改为以下代码,该代码完美无缺,只会增加我对第一种方法不起作用的困惑。

private string _selected;

public void SetSelected(string color)
{
    _selected = color;

    if (!IsLoaded)
        return;

    foreach (ComboBoxItem each in Items)
    {
        if (each.Tag as string == _selected)
        {
            each.IsSelected = true;
            break;
        }
    }
}

0 个答案:

没有答案