Динамическое управление, используемое для создания кнопки ссылки и назначения свойств в ASP.NET - PullRequest
0 голосов
/ 04 февраля 2012

Я хотел бы сгенерировать кнопку ссылки, как показано ниже в коде.

<asp:LinkButton ID="lnkCustomize" OnClientClick="showDialog('editPerson')" Text="Customize"  CommandName="Customize"  CommandArgument='<%#Eval("type") + ";" + Eval("facility") + ";" + Eval("timestamp")%>runat="server"></asp:LinkButton>

Это то, что у меня есть, но мне не удалось получить значение из аргументов. Ценю за любой ответ.

LinkButton link = new LinkButton();
link.Text = "Customize";
link.ID = "lnkCustomize";
double timestamp = ConvertToUnixTimestamp(leftstartTime1);
link.CommandArgument = Eval("type") + "," + Eval("facility") + "," + Eval("timestamp");
link.Command += new CommandEventHandler(DynamicClick);
link.OnClientClick = "showDialog('editPerson')";

1 Ответ

1 голос
/ 06 февраля 2012

1. Исправлено путем правильного определения формата

link.CommandArgument = "first_parameter_value_goes_here" + "," + "second_parameter_value_goes_here" + "," + "third_parameter_value_goes_here";

2. Исправлено путем извлечения всех значений аргументов, как показано ниже

public void DynamicClick(object sender, EventArgs e)
    {
        var editLink = ((LinkButton)sender);
        string info = editLink.CommandArgument;
        string[] arg = new string[2];
        char[] splitter = { ',' };
        arg = info.Split(splitter);
        var var1 = arg[0];
        var var2 = arg[1];
        var var3 = arg[2];
    }
...