доброе утро всем.Работа с Datalist в asp.net?
Я размещаю datalist в своем проекте в том, что я помещаю ссылку, когда я нажимаю на эту кнопку ссылки, панель откроется в этой строке с текстовым полем и кнопкой. он работает нормально, но моя проблема в том, что если я нажму на одну кнопку ссылки на панели строк, откроется, когда я нажму на кнопку ссылки второй строки, панель sencond row откроется, но панель первой строки не закрывается. Я думаю, вы получите мою точку owhter мудрый я объясню еще раз это мой код проверки из-за
<form id="form1" runat="server">
<div>
<asp:DataList ID="Mydatalist" runat ="Server"
OnItemCommand="Mydatalist_ItemCommand" >
<ItemTemplate >
<table >
<tr>
<td>
<asp:Label ID="lblcouname" runat ="server"
Text ='<%# Eval("country_name") %>'></asp:Label>
</td>
<td>
<asp:LinkButton ID="lnkrepl" Text="reply"
CommandName ="reply" runat ="server"
CommandArgument ='<%# Eval("country_id") %>'>
</asp:LinkButton>
</td>
</tr>
</table>
<div>
<asp:Panel ID="mypane" runat ="Server" Visible ="false" >
<asp:TextBox ID="txtpane" runat ="Server" ></asp:TextBox><br />
<asp:Button ID="btnInsert" runat="Server" Text ="Insert" />
</asp:Panel>
</div>
</ItemTemplate>
</asp:DataList>
</div>
</form>
Код:
public partial class Datlist : System.Web.UI.Page
{
SqlConnection con; SqlDataAdapter da; DataSet ds;
protected void Page_Load(object sender, EventArgs e)
{
con = new SqlConnection(
@"server=msmsm;database=pop;user id=sa;password=abc");
con.Open();
if (!IsPostBack)
{
getCountry();
}
}
public void getCountry()
{
string sqr="select * from country";
da=new SqlDataAdapter (sqr,con);
ds = new DataSet();
da.Fill(ds,"country");
Mydatalist.DataSource = ds.Tables[0];
Mydatalist.DataBind();
}
protected void Mydatalist_ItemCommand(object source, DataListCommandEventArgs e)
{
Panel pn = (Panel)e.Item.FindControl("mypane");
pn.Visible = false;
if (e.CommandName == "reply")
{
pn.Visible = true;
}
}
}
Mr.Brian Я редактирую свой вопрос, и я размещаю код, пожалуйста, проверьте –
OK, ItemCommand будет только стрелять для панели, которую вы хотите установить в true; вам нужно добавить следующий код в мой пост выше. –
супер работает отлично Brain спасибо за ответ –