ListControl.SelectedIndex-Eigenschaft
Ruft den niedrigsten Ordinalindex der in der Liste ausgewählten Elemente ab oder legt diesen fest.
Namespace: System.Web.UI.WebControls
Assembly: System.Web (in system.web.dll)
Syntax
'Declaration
<ThemeableAttribute(False)> _
<BindableAttribute(True)> _
Public Overridable Property SelectedIndex As Integer
'Usage
Dim instance As ListControl
Dim value As Integer
value = instance.SelectedIndex
instance.SelectedIndex = value
[ThemeableAttribute(false)]
[BindableAttribute(true)]
public virtual int SelectedIndex { get; set; }
[ThemeableAttribute(false)]
[BindableAttribute(true)]
public:
virtual property int SelectedIndex {
int get ();
void set (int value);
}
/** @property */
public int get_SelectedIndex ()
/** @property */
public void set_SelectedIndex (int value)
public function get SelectedIndex () : int
public function set SelectedIndex (value : int)
Eigenschaftenwert
Der niedrigste Ordinalindex der in der Liste ausgewählten Elemente. Der Standardwert ist -1 und bedeutet, das keine Auswahl getroffen wurde.
Ausnahmen
Ausnahmetyp | Bedingung |
---|---|
Der Index wurde auf einen Wert kleiner -1 festgelegt, oder er ist größer als oder gleich der Anzahl der Elemente in der Liste zur Zeit der Wiedergabe der Liste. |
Hinweise
Mit dieser Eigenschaft können Sie den Index des gegenwärtig in der Liste ausgewählten Elements bestimmen, wenn das Listensteuerelement nur die Auswahl eines Elements zulässt. Wenn im Listensteuerelement mehrere Elemente ausgewählt werden können, geben Sie mit dieser Eigenschaft den niedrigsten Index für die ausgewählten Elemente an.
Der Wert der SelectedIndex-Eigenschaft wird beim Postback nicht ausdrücklich gespeichert. Er wird beim Postback mithilfe der SelectedValue-Eigenschaft wiederhergestellt. Wenn die SelectedValue-Eigenschaft z. B. den Wert 4 hat, wird die SelectedIndex-Eigenschaft beim Postback auf den Index des ListItem-Objekts festgelegt, dessen Value-Eigenschaft den Wert 4 hat. Wenn mehrere ListItem-Objekte eine Value-Eigenschaft mit dem Wert 4 haben, wird das erste Element in der Items-Auflistung ausgewählt.
Diese Eigenschaft kann nicht durch Designs oder Stylesheetdesigns festgelegt werden. Weitere Informationen finden Sie unter ThemeableAttribute und Übersicht über ASP.NET-Designs und ASP.NET-Skins.
Thema | Position |
---|---|
Gewusst wie: Festlegen der Auswahl in List-Webserversteuerelementen (Visual Studio) | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
Gewusst wie: Festlegen der Auswahl in List-Webserversteuerelementen (Visual Studio) | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
Gewusst wie: Bestimmen der Auswahl in List-Webserversteuerelementen | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
Gewusst wie: Festlegen der Auswahl in List-Webserversteuerelementen (Visual Studio) | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
Gewusst wie: Bestimmen der Auswahl in List-Webserversteuerelementen | Erstellen von ASP.NET-Webanwendungen in Visual Studio |
Gewusst wie: Bestimmen der Auswahl in List-Webserversteuerelementen | Erstellen von ASP.NET-Webanwendungen |
Beispiel
Im folgenden Beispiel wird veranschaulicht, wie mithilfe von SelectedIndex der niedrigste Index der ausgewählten Elemente in CheckBoxList bestimmt wird.
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<html>
<script language="VB" runat="server">
Function CreateDataSource() As ICollection
Dim dt As New DataTable()
Dim dr As DataRow
dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
dt.Columns.Add(New DataColumn("DateTimeValue", GetType(DateTime)))
dt.Columns.Add(New DataColumn("BoolValue", GetType(Boolean)))
dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
Dim i As Integer
For i = 0 To 8
dr = dt.NewRow()
dr(0) = i
dr(1) = "Item " + i.ToString()
dr(2) = DateTime.Now
If (i Mod 2) <> 0 Then
dr(3) = True
Else
dr(3) = False
End If
dr(4) = 1.23 *(i + 1)
dt.Rows.Add(dr)
Next i
Dim dv As New DataView(dt)
Return dv
End Function
Sub Page_Load(sender As Object, e As EventArgs)
If Not IsPostBack Then
CheckBoxList1.DataSource = CreateDataSource()
CheckBoxList1.DataTextField = "StringValue"
CheckBoxList1.DataValueField = "CurrencyValue"
CheckBoxList1.DataBind()
End If
End Sub
Sub Index_Changed(sender As Object, e As EventArgs)
Label1.Text = "The index of the first item selected is: " & _
CheckBoxList1.SelectedIndex.ToString()
End Sub
</script>
<body>
<form runat=server>
<asp:CheckBoxList id="CheckBoxList1"
OnSelectedIndexChanged="Index_Changed"
AutoPostBack="true"
runat="server"/>
<br>
<asp:Label id="Label1" runat="server"/>
</form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<html>
<script language="C#" runat="server">
ICollection CreateDataSource() {
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
dt.Columns.Add(new DataColumn("DateTimeValue", typeof(DateTime)));
dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));
dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
for (int i = 0; i < 9; i++) {
dr = dt.NewRow();
dr[0] = i;
dr[1] = "Item " + i.ToString();
dr[2] = DateTime.Now;
dr[3] = (i % 2 != 0) ? true : false;
dr[4] = 1.23 * (i+1);
dt.Rows.Add(dr);
}
DataView dv = new DataView(dt);
return dv;
}
void Page_Load(Object sender, EventArgs e) {
if (!IsPostBack) {
CheckBoxList1.DataSource = CreateDataSource();
CheckBoxList1.DataTextField="StringValue";
CheckBoxList1.DataValueField="CurrencyValue";
CheckBoxList1.DataBind();
}
}
void Index_Changed(Object sender, EventArgs e) {
Label1.Text = "The index of the first item selected is: " +
CheckBoxList1.SelectedIndex.ToString();
}
</script>
<body>
<form runat=server>
<asp:CheckBoxList id="CheckBoxList1"
OnSelectedIndexChanged="Index_Changed"
AutoPostBack="true"
runat="server"/>
<br>
<asp:Label id="Label1" runat="server"/>
</form>
</body>
</html>
<%@ Page Language="JScript" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
<html>
<script language="JSCRIPT" runat="server">
function CreateDataSource() : ICollection{
var dt : DataTable = new DataTable()
var dr : DataRow
dt.Columns.Add(new DataColumn("IntegerValue", System.Int32))
dt.Columns.Add(new DataColumn("StringValue", System.String))
dt.Columns.Add(new DataColumn("DateTimeValue", System.DateTime))
dt.Columns.Add(new DataColumn("BoolValue", System.Boolean))
dt.Columns.Add(new DataColumn("CurrencyValue", System.Double))
var i : int
for( i = 0; i < 9; i++){
dr = dt.NewRow()
dr("IntegerValue") = i
dr("StringValue") = "Item " + i.ToString()
dr("DateTimeValue") = DateTime.Now
dr("BoolValue") = ((i % 2) != 0) ? true : false
dr("CurrencyValue") = 1.23 *(i + 1)
dt.Rows.Add(dr)
}
var dv : DataView = new DataView(dt)
return dv
}
function Page_Load(sender : Object, e : EventArgs){
if(!IsPostBack){
CheckBoxList1.DataSource = CreateDataSource()
CheckBoxList1.DataTextField = "StringValue"
CheckBoxList1.DataValueField = "CurrencyValue"
CheckBoxList1.DataBind()
}
}
function Index_Changed(sender : Object, e : EventArgs){
Label1.Text = "The index of the first item selected is: " + CheckBoxList1.SelectedIndex.ToString()
}
</script>
<body>
<form runat=server>
<asp:CheckBoxList id="CheckBoxList1"
OnSelectedIndexChanged="Index_Changed"
AutoPostBack="true"
runat="server"/>
<br>
<asp:Label id="Label1" runat="server"/>
</form>
</body>
</html>
Plattformen
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
ListControl-Klasse
ListControl-Member
System.Web.UI.WebControls-Namespace
CheckBoxList-Klasse