Exemple #1
0
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            int           ifrom = 0;
            int           ito   = 0;
            KeyConfigData KD    = (KeyConfigData)value;
            ObservableCollection <string> dist = new ObservableCollection <string>();

            if (value == null)
            {
                return(dist);
            }
            while (ito < KD.assign.Length)
            {
                //最初の{を検索
                ifrom = KD.assign.IndexOf("{", ito);
                if (ifrom >= 0)
                {
                    //{が発見できた場合}を検索
                    ito = KD.assign.IndexOf("}", ifrom);
                    if (ito >= 0)
                    {
                        //{から}までをショートカットとして設定
                        dist.Add(KD.assign.Substring(ifrom + 1, ito - ifrom - 1));
                    }
                }
                else
                {
                    break;
                }
            }
            return(dist);
        }
Exemple #2
0
        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            ObservableCollection <string> aaa = (ObservableCollection <string>)value;
            KeyConfigData KD = new KeyConfigData();

            foreach (string tmp in aaa)
            {
                //1レコードごとに{}で囲んで結合前後にスペース
                KD.assign += " {" + tmp + "} ";
            }
            return(KD);
        }
Exemple #3
0
        /// <summary>
        /// アプリケーション設定からショートカットキー全定義取得
        /// データグリッドの一覧作成元になります
        /// </summary>
        /// <param name="KeyConvDef"></param>
        public void GetAllDef(KeyConfigList KL)
        {
            StringCollection src = Properties.Settings.Default.AllKeyDef;

            //ショートカットキー全定義取得
            foreach (string str in src)
            {
                KeyConfigData fd = new KeyConfigData();
                //最初の空白を検索
                int ito = str.IndexOf(" ");
                //最初の空白までをカテゴリとして抽出
                fd.Cat = str.Substring(0, ito);
                int ifrom = ito + 1;
                ito = str.IndexOf(" ", ifrom);
                //次の空白までをIDとして抽出
                fd.ID = Convert.ToInt32(str.Substring(ifrom, ito - ifrom));
                ifrom = ito + 1;
                //残りを機能名として設定
                fd.name = str.Substring(ifrom);
                KL.Add(fd);
            }
        }