您的位置:首页 > 其它

Silverlight中使用枚举变量载入页面的下拉菜单(WPF)

2014-03-14 09:02 288 查看
首先定义一个枚举变量

public enum CatEnum
{
#region 编号字段,用于获取编号
/// <summary>
/// 抗压
/// </summary>
KY = 201,
/// <summary>
/// 抗折
/// </summary>
KZ = 202,
/// <summary>
/// 抗渗
/// </summary>
KS = 203,
/// <summary>
/// 抗冻
/// </summary>
KD = 204,
#endregion

}

我在前台定义一个combox

<ComboBox Height="23" Width="121" HorizontalAlignment="Left" Margin="535,75,0,0" Name="cbCatEnum" VerticalAlignment="Top" SelectedValuePath="Key" DisplayMemberPath="Value" ItemsSource="{Binding CatEnumWithOutParentItemSource}" SelectedValue="{Binding QueryList.CategoryNo, Mode=TwoWay}" />

这里需要记住key,value,以及绑定的itemssource

下面开始后台代码:

void cbCatEnum_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if (e.AddedItems.Count > 0)
{
SelectedCatEnum = (CatEnum)this.cbCatEnum.SelectedValue;
}
}


void UcQuery_Loaded(object sender, RoutedEventArgs e)
{
this.DataContext = this;
this.cbCatEnum.SelectionChanged += new SelectionChangedEventHandler(cbCatEnum_SelectionChanged);
}


这边需要用到key,value等值

public IEnumerable<KeyValuePair<CatEnum, string>> CatEnumWithOutParentItemSource
{
get { return EnumsHelper.CatEnumWithOutParent(); }
}

public CatEnum SelectedCatEnum { get; set; }

第一行中的<CatEnum,string>,就是对应key和value值

效果如下。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: