ControlParameter.PropertyName Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Nesnenin bağlandığı özellik tarafından tanımlanan denetimin ControlID özellik ControlParameter adını alır veya ayarlar.
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
Özellik Değeri
Bir string
denetimin bağlanacak özelliğinin ControlParameter adını temsil eden.
- Öznitelikler
Örnekler
Aşağıdaki kod örneği, bir denetimde ListBox görüntülenen verileri bildirim temelli bir ControlParameter senaryoda denetimin seçili değerine bağlamak için nesnesinin DropDownList nasıl kullanılacağını gösterir. Denetim, DropDownList denetimden ListControl türetilir. ControlParameter nesnesi, formdaki denetimin SqlDataSource koleksiyonuna SelectParameters eklenir ve özelliğindeki "@Title" yer tutucu metnine SelectCommand karşılık gelir.
<!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>
Aşağıdaki kod örneği, bir ControlParameter nesnenin ControlID bağlı olduğu denetimi tanımlamak için ve PropertyName özelliklerinin nasıl ayarlandığını gösterir. Örnek, bir ListBox denetimi değerlerle doldurur. Denetimin SelectedValueListBox özelliği, bir denetim tarafından alınan ve bir SqlDataSource denetim tarafından görüntülenen verileri filtrelemek için GridView kullanılır.
<%@ 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>
Açıklamalar
özelliği, PropertyName nesnenin Control çalışma zamanında bağlandığı özelliği tarafından ControlID tanımlanan nesnenin ControlParameter ortak özelliğini tanımlar. PropertyName karmaşık denetim özelliklerini tanımlamak için "SelectedValue" gibi basit bir dizeye veya söz dizimi kullanan Eval bir ifadeye ayarlanabilir.
PropertyName özelliği isteğe bağlı olsa da, yöntemin bir denetime doğru şekilde bağlanması için Evaluate genellikle hem hem PropertyName de ControlID özellikleri ayarlanır. Özelliğini ayarlar ancak özelliği ayarlamazsanız ControlIDPropertyName, Evaluate yöntemi varsayılan PropertyName özelliği tanımlamak için özniteliğini ControlValuePropertyAttribute kullanmayı dener. (Bu özniteliği belirtmek denetim yazarlarının sorumluluğundadır.) Bu başarısız olursa, Evaluate bir ArgumentException özel durum oluşturur.
Aşağıdaki tabloda, özellikleri özniteliğiyle süsleyen ASP.NET denetimleri tanımlanmıştır ControlValuePropertyAttribute .