GridView и текстовые поля - PullRequest
       2

GridView и текстовые поля

0 голосов
/ 22 ноября 2011

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

  <asp:TemplateField>
     <ItemTemplate>
         <asp:TextBox ID="txtSomething" runat="server" Text='<%# Bind("SOME_COL") %>'></asp:TextBox>
      </ItemTemplate>
      <ItemStyle Width="10%" />
   </asp:TemplateField>
    <asp:TemplateField HeaderStyle-ForeColor="white" 
                       HeaderStyle-HorizontalAlign="Left" ItemStyle-Width="5%">
       <ItemTemplate>
            <asp:LinkButton Id="btnSomething" runat="server" 
                            CommandArgument='<%# Eval("SOME_ID") %>' 
                            CommandName="WaitPeriodSave" CausesValidation="false"
                 >Save</asp:LinkButton>

Аргументом команды является SOME_ID, и он может содержать значение 4, но это может быть 2-я строка в виде сетки.

Могу ли я передать более одного значения в аргументе команды? Если да, то как? Кроме того, есть ли способ определить номер выбранной строки. В приведенном выше сценарии это 2, которое, вероятно, основано на нуле, поэтому должно быть 1.

1 Ответ

3 голосов
/ 22 ноября 2011

CommadArgument имеет тип string; поэтому, если вы хотите передать более одного аргумента в свойстве CommandArgument, вы должны придумать какое-то соглашение для этого, например, конкатенировать аргументы и разделить их запятыми, а затем разделить их на код позади. Например:

CommandArgument='<%# string.Format("{0},{1}",Eval("SOME_ID"),Eval("OTHER_PROPERTY")) %>' 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...