Ejemplo n.º 1
0
        private void ButtonSearch_Click(object sender, EventArgs e)
        {
            try
            {
                ListBoxFounds.Items.Clear();

                // 検索
                List <List <String> > aRecords = NklCommon.FindCsvRecordsIncludes(mCsvs, mColumnIndex, TextBoxKeyword.Text);
                if (aRecords.Count == 0)
                {
                    ShowLogMessage(TraceEventType.Error, "「" + TextBoxKeyword.Text + "」を含む" + mItemName + "はありません。");
                    return;
                }

                // 重複を除外
                List <String> aHits = new List <String>();
                for (Int32 i = 0; i < aRecords.Count; i++)
                {
                    String aName = aRecords[i][mColumnIndex];
                    if (!String.IsNullOrEmpty(aName) && !aHits.Contains(aName))
                    {
                        aHits.Add(aName);
                    }
                }
                aHits.Sort();

                // リストボックスに表示
                ListBoxFounds.Items.AddRange(aHits.ToArray());
                ListBoxFounds.Focus();
                ListBoxFounds.SelectedIndex = 0;
            }
            catch (Exception oExcep)
            {
                ShowLogMessage(TraceEventType.Error, "情報検索時エラー:\n" + oExcep.Message);
                ShowLogMessage(TraceEventType.Verbose, " スタックトレース:\n" + oExcep.StackTrace);
            }
        }