ControlParameter.PropertyName Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u de eigenschapsnaam op van het besturingselement dat is geïdentificeerd door de ControlID eigenschap waaraan het ControlParameter object is gekoppeld.
public:
property System::String ^ PropertyName { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.ControlPropertyNameConverter))]
public string PropertyName { get; set; }
[<System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.ControlPropertyNameConverter))>]
member this.PropertyName : string with get, set
Public Property PropertyName As String
Waarde van eigenschap
Een string die de naam vertegenwoordigt van de eigenschap van een besturingselement waaraan de ControlParameter binding is gekoppeld.
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u een ControlParameter object gebruikt om gegevens die in een ListBox besturingselement worden weergegeven te binden aan de geselecteerde waarde van een DropDownList besturingselement in een declaratief scenario. Het DropDownList besturingselement is afgeleid van het ListControl besturingselement. Het ControlParameter object wordt toegevoegd aan de SelectParameters verzameling van het SqlDataSource besturingselement op het formulier en komt overeen met de tijdelijke aanduiding '@Title' in de SelectCommand eigenschap.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<p><asp:dropdownlist
id="DropDownList1"
runat="server"
autopostback="True">
<asp:listitem selected="True">Sales Representative</asp:listitem>
<asp:listitem>Sales Manager</asp:listitem>
<asp:listitem>Vice President, Sales</asp:listitem>
</asp:dropdownlist></p>
<asp:sqldatasource
id="SqlDataSource1"
runat="server"
connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
selectcommand="SELECT LastName FROM Employees WHERE Title = @Title">
<selectparameters>
<asp:controlparameter name="Title" controlid="DropDownList1" propertyname="SelectedValue"/>
</selectparameters>
</asp:sqldatasource>
<p><asp:listbox
id="ListBox1"
runat="server"
datasourceid="SqlDataSource1"
datatextfield="LastName">
</asp:listbox></p>
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<p><asp:dropdownlist
id="DropDownList1"
runat="server"
autopostback="True">
<asp:listitem selected="True">Sales Representative</asp:listitem>
<asp:listitem>Sales Manager</asp:listitem>
<asp:listitem>Vice President, Sales</asp:listitem>
</asp:dropdownlist></p>
<asp:sqldatasource
id="SqlDataSource1"
runat="server"
connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
selectcommand="SELECT LastName FROM Employees WHERE Title = @Title">
<selectparameters>
<asp:controlparameter name="Title" controlid="DropDownList1" propertyname="SelectedValue"/>
</selectparameters>
</asp:sqldatasource>
<p><asp:listbox
id="ListBox1"
runat="server"
datasourceid="SqlDataSource1"
datatextfield="LastName">
</asp:listbox></p>
</form>
</body>
</html>
In het volgende codevoorbeeld ziet u hoe u de ControlID en PropertyName eigenschappen instelt om het besturingselement te identificeren waaraan een ControlParameter object is gebonden. In het voorbeeld wordt een ListBox besturingselement gevuld met waarden. De SelectedValue eigenschap van het ListBox besturingselement wordt gebruikt om gegevens te filteren die zijn opgehaald door een SqlDataSource besturingselement en weergegeven door een GridView besturingselement.
<%@ Page language="c#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
if (IsPostBack) {
GridView1.DataBind();
}
else {
ListBox1.Items.Add(new ListItem("Nancy Davolio", "1",true));
ListBox1.Items.Add(new ListItem("Janet Leverling", "3",true));
ListBox1.Items.Add(new ListItem("Margaret Peacock","4",true));
ListBox1.Items.Add(new ListItem("Michael Suyama", "6",true));
ListBox1.Items.Add(new ListItem("Robert King", "7",true));
ListBox1.Items.Add(new ListItem("Anne Dodsworth", "9",true));
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<p>Show Orders For:</p>
<p>
<asp:ListBox
id="ListBox1"
runat="server"
AutoPostBack="True">
</asp:ListBox></p>
<asp:SqlDataSource
id="OdbcDataSource1"
runat="server"
ProviderName="System.Data.Odbc"
DataSourceMode="DataSet"
SelectCommand="SELECT OrderID, ShipName FROM Orders WHERE EmployeeID = ?;"
ConnectionString="dsn=MyOdbcDSN;">
<SELECTPARAMETERS>
<asp:ControlParameter
PropertyName="SelectedValue"
ControlID="ListBox1"
Name="empID">
</asp:ControlParameter>
</SELECTPARAMETERS>
</asp:SqlDataSource>
<p>
<asp:GridView
id="GridView1"
runat="server"
DataSourceID="OdbcDataSource1">
</asp:GridView></p>
</form>
</body>
</html>
<%@ Page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub Page_Load(sender As Object, e As EventArgs)
If (IsPostBack) Then
GridView1.DataBind()
Else
Dim li As ListItem
li = New ListItem("Nancy Davolio", "1",True)
ListBox1.Items.Add(li)
li = New ListItem("Janet Leverling", "3",True)
ListBox1.Items.Add(li)
li = New ListItem("Margaret Peacock","4",True)
ListBox1.Items.Add(li)
li = New ListItem("Michael Suyama", "6",True)
ListBox1.Items.Add(li)
li = New ListItem("Robert King", "7",True)
ListBox1.Items.Add(li)
li = New ListItem("Anne Dodsworth", "9",True)
ListBox1.Items.Add(li)
End If
End Sub ' Page_Load
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<p>Show Orders For:</p>
<p>
<asp:ListBox
id="ListBox1"
runat="server"
AutoPostBack="True">
</asp:ListBox></p>
<asp:SqlDataSource
id="OdbcDataSource1"
runat="server"
ProviderName="System.Data.Odbc"
DataSourceMode="DataSet"
SelectCommand="SELECT OrderID, ShipName FROM Orders WHERE EmployeeID = ?;"
ConnectionString="dsn=MyOdbcDSN;">
<SELECTPARAMETERS>
<asp:ControlParameter
PropertyName="SelectedValue"
ControlID="ListBox1"
Name="empID">
</asp:ControlParameter>
</SELECTPARAMETERS>
</asp:SqlDataSource>
<p>
<asp:GridView
id="GridView1"
runat="server"
DataSourceID="OdbcDataSource1">
</asp:GridView></p>
</form>
</body>
</html>
Opmerkingen
De PropertyName eigenschap identificeert de openbare eigenschap van het Control object dat wordt geïdentificeerd door de ControlID eigenschap waaraan het ControlParameter object tijdens runtime wordt gebonden. PropertyName kan worden ingesteld op een eenvoudige tekenreeks, zoals 'SelectedValue', of een expressie met behulp van Eval syntaxis om complexe besturingselementeigenschappen te identificeren.
Hoewel de PropertyName eigenschap optioneel is, worden doorgaans beide ControlID eigenschappen PropertyName ingesteld om de Evaluate methode correct te binden aan een besturingselement. Als u de ControlID eigenschap maar niet de PropertyName eigenschap instelt, probeert de Evaluate methode het ControlValuePropertyAttribute kenmerk te gebruiken om een standaardeigenschap PropertyName te identificeren. (Het is de verantwoordelijkheid van auteurs van besturingselementen om dit kenmerk op te geven.) Als dit mislukt, Evaluate genereert u een ArgumentException uitzondering.
De volgende tabel geeft aan welke ASP.NET besturingselementen voor het versieren van eigenschappen voorzien van het kenmerk ControlValuePropertyAttribute.