• MultiSelectComboBox(二)


    1. MainWindow.xaml

    <Window x:Class="MultiSelectDemo.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:ViewModel="clr-namespace:MultiSelectDemo"
            xmlns:control="clr-namespace:MultiSelectComboBox;assembly=MultiSelectComboBox"
            Title="MainWindow" Height="350" Width="525">
        <Window.Resources>
            <ViewModel:ViewModel x:Key="ViewModel"/>
        </Window.Resources>
        <Grid DataContext="{Binding Source={StaticResource ViewModel}}">
            <control:MultiSelectComboBox Width="100" Height="30" ItemsSource="{Binding Items}"
                                         DefaultText="input jjj"
                                         SelectedItems="{Binding SelectedItems,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
                                         />
        </Grid>
    </Window>

    2. MainWindowViewModel.cs

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Windows;

    namespace MultiSelectDemo
    {
        public class MainWindowViewModel: NotificationObject
        {

            private Dictionary<string, object> _items;
            private Dictionary<string, object> _selectedItems;

            public Dictionary<string, object> Items
            {
                get
                {
                    return _items;
                }
                set
                {
                    _items = value;
                    NotifyPropertyChanged("Items");
                }
            }

            public Dictionary<string, object> SelectedItems
            {
                get
                {
                    return _selectedItems;
                }
                set
                {
                    _selectedItems = value;
                    NotifyPropertyChanged("SelectedItems");
                }
            }

            public MainWindowViewModel()
            {
                Items = new Dictionary<string, object>();
                Items.Add("Chennai", "MAS");
                Items.Add("Trichy", "TPJ");
                Items.Add("Bangalore", "SBC");
                Items.Add("Coimbatore", "CBE");

                SelectedItems = new Dictionary<string, object>();
                SelectedItems.Add("Chennai", "MAS");
                SelectedItems.Add("Trichy", "TPJ");
            }

            private void Submit()
            {
                foreach (KeyValuePair<string, object> s in SelectedItems)
                    MessageBox.Show(s.Key);
            }

        }

    }

  • 相关阅读:
    .net环境变量 的设置
    情人节我们依旧单身(制作属于自己的QQ拼音皮肤)(带全部ps素材)
    sqlServer 中 正则表达式的使用(regexReplace函数)及配置(转)
    winform开发日常问题小记
    Ext 界面开发工具 Ext Designer 破解补丁
    中关村海龙大厦买本上当经历给大家提个醒
    [原创]Ext Panel 收缩时显示收缩文本
    解决php json_encode 出现的中文转码、乱码问题
    js获取get方式提交的参数返回json格式数据
    解决php的$美元符号与Zen Coding冲突问题
  • 原文地址:https://www.cnblogs.com/zisezhixin/p/4106907.html
Copyright © 2020-2023  润新知