将项绑定到MVVM体系结构中的silverlight组合框

时间:2013-01-09 14:27:27

标签: c# wpf silverlight mvvm

我正在实体类中创建一个属性,如下所示

public class Myclass
{
private string _Selecteditem;
public string SelectedItem
{
get{return _Selecteditem;}
set{_Seleteditem = value;
}
}

在xaml页面我绑定了Combobox,如下所示

<ComboBox Name="cmbCountry" Grid.Column="14" Grid.Row="0" Width="150" SelectedItem="{Binding SelectedCountry,Mode=TwoWay}" >
                <ComboBoxItem Tag="--Select--" Content="--Select--"/>
                <ComboBoxItem Tag="US" Content="US" />
                <ComboBoxItem Tag="CA" Content="CA" />
                <ComboBox.SelectedIndex>0</ComboBox.SelectedIndex>
            </ComboBox>

我希望将此选定项添加到Model类中的querystring,我正在尝试如下

Myclass myclass = new MyClass();     
QueryString.Add("SeletedItem", Convert.ToString(myclass.SelectedItem.Value));

这里我将SelectedItem值作为System.Web.ComboItem获取,但我想如果我选择'US'作为下拉列表我需要获得'US'。如何获得价值请帮助我。

2 个答案:

答案 0 :(得分:2)

不是在xaml代码中声明组合框项目,而是在模型中将它们声明为ObservableCollection。然后将此属性绑定到xaml中组合框的Items属性。

答案 1 :(得分:0)

使用QueryString.Add("SeletedItem",(myclass.SelectedItem.Value as System.Windows.Controls.ComboBoxItem).Content.ToString());