OnRowDataBound를 사용하여 다음과 같은 그리드보기에 링크 단추를 자동으로 추가하고 있습니다. 내가 겪고있는 문제는 명령 인수를 설정하는 것이다.asp.net set 명령 인수
<asp:LinkButton ID = "lnkDelete" Text = "Delete" CommandArgument = '<%# Eval("Value") %>' runat = "server" OnClick = "DeleteFile" />
다음은 링크를 추가하는 코드입니다. 명령 인수를 Eval ("Value")로 설정했지만 작동하지 않습니다. Here is a link to the original code that I'm trying to change so it is dynamic.
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton lnkView = new LinkButton();
lnkView.ID = "lnkDelete";
lnkView.Text = "Delete";
lnkView.Click += DeleteFile;
lnkView.CommandArgument = Eval("Value");
e.Row.Cells[1].Controls.Add(lnkView);
}
. 링크가 만들어지고있는 것은 그들이 작동하지 않는다는 것입니다. 나는 초보자 일 뿐이고, 나는 당신의 모범에서 무엇을해야 하는지를 아직도 이해하지 못합니다. – Laserchalk
나는 그것을 조금 더 잘 이해한다고 생각한다. 그래서이 부분 (DataRowView) e.Row.DataItem; "DataRowView"가 내 데이터 소스 일 필요가 있습니까? – Laserchalk
@Laserchalk : 예, 데이터 소스의 단일 레코드입니다. 'DataTow'를'DataSource'로 사용하면'DataRowView'입니다. 다른 소스를 사용하는 경우 유형을 변경해야합니다. 그러나 당신은 무엇을 이해하지 못했습니까? OnRowCreated 이벤트 핸들러를 등록하고 거기에 링크를 만들었습니까? 어떻게 된 거예요? –