/// <summary> /// csv形式のデータオブジェクトを設定する. /// </summary> /// <param name="data">ICsvインタフェースを実装したオブジェクト</param> public void SetCSV(KrdLab.Lisys.ICsv data) { this.DataGridView.Rows.Clear(); this.DataGridView.Columns.Clear(); if (data == null) { return; } string csv = data.ToCsv(); string[] lines = csv.Split(new string[] { "\r\n" }, StringSplitOptions.None); if (lines.Length < 1) { return; } String[] cols = lines[0].Split(','); for (int c = 0; c < cols.Length; ++c) { this.DataGridView.Columns.Add("c-" + c, c.ToString()); } foreach (string line in lines) { this.DataGridView.Rows.Add(line.Split(',')); } }
/// <summary> /// ビジュアライザのUIを表示する. /// </summary> /// <param name="windowService"></param> /// <param name="objectProvider"></param> protected override void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider) { // TODO: ビジュアライザを表示する目的のオブジェクトを取得します。 // objectProvider.GetObject() の結果を視覚化 // されるオブジェクトの型にキャストします。 object data = (object)objectProvider.GetObject(); // TODO: オブジェクトのビューを表示します。 // displayForm をユーザー独自のカスタム フォームまたはコントロールで置き換えます。 using (MatrixVisualizerForm displayForm = new MatrixVisualizerForm()) { // 型チェックをしていない KrdLab.Lisys.ICsv content = (KrdLab.Lisys.ICsv)data; displayForm.SetCSV(content); windowService.ShowDialog(displayForm); } }