ListView.EditIndex プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
編集中の項目のインデックスを取得または設定します。
public:
virtual property int EditIndex { int get(); void set(int value); };
public virtual int EditIndex { get; set; }
member this.EditIndex : int with get, set
Public Overridable Property EditIndex As Integer
プロパティ値
編集中の項目の 0 から始まるインデックス番号。 既定値は -1 で、項目が編集されていないことを示します。
例外
EditIndex プロパティは、-1 未満の値が設定されています。
例
次の例は、 プロパティを EditIndex 使用して、アイテムがコントロールの編集モードであるかどうかを判断する方法を ListView 示しています。 このコード例は、ListViewDataItem クラスのために提供されている大規模な例の一部です。
protected void ContactsListView_ItemDataBound(object sender, ListViewItemEventArgs e)
{
//Verify there is an item being edited.
if (ContactsListView.EditIndex >= 0)
{
//Get the item object.
ListViewDataItem dataItem = (ListViewDataItem)e.Item;
// Check for an item in edit mode.
if (dataItem.DisplayIndex == ContactsListView.EditIndex)
{
// Preselect the DropDownList control with the Title value
// for the current item.
// Retrieve the underlying data item. In this example
// the underlying data item is a DataRowView object.
DataRowView rowView = (DataRowView)dataItem.DataItem;
// Retrieve the Title value for the current item.
String title = rowView["Title"].ToString();
// Retrieve the DropDownList control from the current row.
DropDownList list = (DropDownList)dataItem.FindControl("TitlesList");
// Find the ListItem object in the DropDownList control with the
// title value and select the item.
ListItem item = list.Items.FindByText(title);
list.SelectedIndex = list.Items.IndexOf(item);
}
}
}
Protected Sub ContactsListView_ItemDataBound(ByVal sender As Object, ByVal e As ListViewItemEventArgs)
'Verify there is an item being edited.
If ContactsListView.EditIndex >= 0 Then
'Get the item object.
Dim dataItem As ListViewDataItem = CType(e.Item, ListViewDataItem)
' Check for an item in edit mode.
If dataItem.DisplayIndex = ContactsListView.EditIndex Then
' Preselect the DropDownList control with the Title value
' for the current item.
' Retrieve the underlying data item. In this example
' the underlying data item is a DataRowView object.
Dim rowView As DataRowView = CType(dataItem.DataItem, DataRowView)
' Retrieve the Title value for the current item.
Dim title As String = rowView("Title").ToString()
' Retrieve the DropDownList control from the current row.
Dim list As DropDownList = CType(dataItem.FindControl("TitlesList"), DropDownList)
' Find the ListItem object in the DropDownList control with the
' title value and select the item.
Dim item As ListItem = list.Items.FindByText(title)
list.SelectedIndex = list.Items.IndexOf(item)
End If
End If
End Sub
注釈
プロパティを EditIndex 使用して、編集するコントロール内の項目を ListView プログラムで指定または決定できます。 このプロパティがコントロール内の項目のインデックスに設定されている場合、その項目は編集モードで表示されます。 編集モードでは、項目はテンプレートではなくItemTemplateテンプレートをEditItemTemplate使用してレンダリングされます。 にデータ バインド コントロールを設定 EditItemTemplate して、ユーザーがアイテムの値を変更できるようにすることができます。 編集モードから表示モードに切り替えるには、このプロパティを -1 に設定します。
プロパティは EditIndex 、通常、編集する項目をプログラムで決定する必要がある場合、またはコントロールにカスタム編集機能を追加する場合に ListView 使用されます。
ListViewコントロールには、プロパティが に設定されている項目テンプレートCommandNameにボタンを追加すると、アイテムが編集モードで自動的に配置Edit
される組み込みの編集機能があります。
適用対象
こちらもご覧ください
.NET