作成日: 2022/03/11 最終更新日: 2022/03/30
文書種別
使用方法
詳細
ComboBoxCell.ValueAsIndexプロパティにTrueを設定することで、ComboBoxCellのValueプロパティで取得される値をアイテムのインデックス番号にすることができます。
または、ComboBox.Itemsプロパティのコレクションから、セルの値(Cell.Value)を検索することで、ComboBoxCellで選択されている値のインデックスを取得することができます。
[Visual Basic]
[C#]
または、ComboBox.Itemsプロパティのコレクションから、セルの値(Cell.Value)を検索することで、ComboBoxCellで選択されている値のインデックスを取得することができます。
[Visual Basic]
Imports GrapeCity.Win.MultiRow
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim comboBoxCell1 As New ComboBoxCell
comboBoxCell1.Name = "comboBoxCell1"
comboBoxCell1.Items.Add("東京")
comboBoxCell1.Items.Add("名古屋")
comboBoxCell1.Items.Add("大阪")
GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {comboBoxCell1})
GcMultiRow1.SetValue(0, "comboBoxCell1", "名古屋")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim gcMultiRow As GcMultiRow = Me.GcMultiRow1
If TypeOf gcMultiRow.CurrentCell Is ComboBoxCell Then
Dim comboBoxCell As ComboBoxCell = TryCast(gcMultiRow.CurrentCell, ComboBoxCell)
Dim selectedValue As Object = comboBoxCell.Value
Dim selectedIndex As Integer = -1
If selectedValue IsNot Nothing Then
selectedIndex = comboBoxCell.Items.IndexOf(selectedValue)
End If
MessageBox.Show(String.Format("選択されているインデックス: {0}", selectedIndex))
Else
MessageBox.Show("現在のセルはComboBoxCellではありません")
End If
End Sub
[C#]
using GrapeCity.Win.MultiRow;
private void Form1_Load(object sender, EventArgs e)
{
ComboBoxCell comboBoxCell1 = new ComboBoxCell();
comboBoxCell1.Name = "comboBoxCell1";
comboBoxCell1.Items.Add("東京");
comboBoxCell1.Items.Add("名古屋");
comboBoxCell1.Items.Add("大阪");
gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { comboBoxCell1 });
gcMultiRow1.SetValue(0, "comboBoxCell1", "名古屋");
}
private void button1_Click(object sender, EventArgs e)
{
GcMultiRow gcMultiRow = this.gcMultiRow1;
if (gcMultiRow.CurrentCell is ComboBoxCell)
{
ComboBoxCell comboBoxCell = gcMultiRow.CurrentCell as ComboBoxCell;
object selectedValue = comboBoxCell.Value;
int selectedIndex = -1;
if (selectedValue != null)
{
selectedIndex = comboBoxCell.Items.IndexOf(selectedValue);
}
MessageBox.Show(string.Format("選択されているインデックス: {0}", selectedIndex));
}
else
{
MessageBox.Show("現在のセルはComboBoxCellではありません");
}
}