한 번 linkButton이 commandArgument에서 둘 이상의 값을 전달하도록 요청한 다음 임의의 문자로 구분 된 여러 값의 문자열을 전달하고 그 값으로 분할하는 방식에 도달했습니다. 원래 부분 ... 그게 잘 풀리지 않았어. 나는 쪼개짐이 무엇이 잘못되었는지 모른다.LinkButton 다중 값 가능한 깨끗한 솔루션을 전달
이제 LinkButton의 사용자 정의 컨트롤을 만들고 속성을 추가하여 nedeed 값을 허용하는 유일한 해결책을 시도해 보았습니다! ... 내 2 가지 접근 방식에있어 잘못된 점을 알려주시겠습니까? link text
하고 이것은 사용자 제어 방식에 대한 코드 >>
MultivaluedLinkButton.ascx이다 :
첫번째 질문은 여기에서 찾을 수
<asp:LinkButton ID="LnkBtnSort" runat="server" Text="Sort" OnClick="LnkBtnSort_Clicked"/>
MultivaluedLinkButton.ascx.cs :
public partial class MultivaluedLinkButton : System.Web.UI.UserControl
{
public event EventHandler Click;
private int _sortingType;
private string _sortingFactor;
private string _text;
public int SortingType
{
set { _sortingType = value; }
get { return _sortingType; }
}
public string SortingFactor
{
set { _sortingFactor = value; }
get { return _sortingFactor.ToString(); }
}
//public string Text
//{
// set { _text = value; }
// get { return _text.ToString(); }
//}
protected void LnkBtnSort_Clicked(object sender, EventArgs e)
{
if(Click != null)
{
this.Click(this, EventArgs.Empty);
}
}
}
마지막으로
protected void MultivaluedLinkButton1_Clicked(object sender, EventArgs e)
{
MultivaluedLinkButton ctrl = (MultivaluedLinkButton)sender;
using (SqlConnection cn1 = new SqlConnection(ConfigurationManager.ConnectionStrings["testConnectionString"].ConnectionString))
{
using (SqlCommand cm1 = new SqlCommand(commandString2, cn1))
{
cm1.Parameters.Add("@arrange_by_id", System.Data.SqlDbType.Int);
cm1.Parameters["@arrange_by_id"].Value = ctrl.SortingType;
cn1.Open();
using (SqlDataReader dr1 = cm1.ExecuteReader())
{
SortBy_rpt.DataSource = dr1;
SortBy_rpt.DataBind();
}
}
}
}
구현 페이지에서 중계기의 항목 템플릿 : aspx 페이지 안에 내 컨트롤의 구현 내가 보는 문제가
<ItemTemplate>
<uc1:MultivaluedLinkButton ID="MultivaluedLinkButton1" runat="server" OnClick="MultivaluedLinkButton1_Clicked" SortingType='<%#Eval("arrange_by_id")%>' />
</ItemTemplate>
MultivaluedLinkButton1은 중계기 내부에 있으므로 액세스 할 수 없으므로 고유하지 않은 ID가됩니다 (MultivaluedLinkButton1_Clicked에 액세스 할 수 있음)! 답이 맞는지 또는 page_load! – lKashef