Form Ekranı
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button2" runat="server" Text="Ara" OnClick="Button2_Click" />
<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="DataList1_ItemCommand" DataKeyField="urunid" Width="194px">
<ItemTemplate>
urunadi:
<asp:Label ID="urunadiLabel" runat="server" Text='<%# Eval("urunadi") %>' />
<br />
fiyat:
<asp:Label ID="fiyatLabel" runat="server" Text='<%# Eval("fiyat") %>' />
<br />
urunid:
<asp:Label ID="urunidLabel" runat="server" Text='<%# Eval("urunid") %>' />
<br />
<br />
<asp:Button ID="Button1" runat="server" CommandName="datalistdene" CommandArgument='<%#Eval("urunid") %>' Text="Göster" />
</ItemTemplate>
</asp:DataList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:caglayanCS %>" SelectCommand="SELECT [urunadi], [fiyat], [urunid] FROM [urunTablosu]">
</asp:SqlDataSource>
<%-- <SelectParameters>
<asp:ControlParameter ControlID="TextBox1" Name="urunadii" PropertyName="Text" Type="String" />
</SelectParameters>--%>
Bu kodu SqlDataSource içersine yerleştirdiğimiz zaman ilk başta datalist gizli gelir daha sonra gizli datalist içerisnden sadece tam adı doğru bir şekilde yazıldığında sonuc gösterir.
bunu yapmak için ise SqlDataSource SelectCommad sonuna WHERE ([urunadi] = @urunadii) eklenir.
Buton Ara
protected void Button2_Click(object sender, EventArgs e)
{
SqlDataSource1.FilterExpression = "urunadi like '{0}%'";
SqlDataSource1.FilterParameters.Add(new ControlParameter("urunadi", "TextBox1", "Text"));
}
Buton Göster Ekranı
{
if(e.CommandName=="datalistdene")
{
Response.Redirect("datalistdenegor.aspx?id="+e.CommandArgument.ToString());
}
}
Hiç yorum yok:
Yorum Gönder