Значение скрытого поля в GridView - PullRequest
1 голос
/ 19 февраля 2011

Как получить значение скрытого столбца в GridView в asp.net?

Ответы [ 4 ]

1 голос
/ 19 февраля 2011

Сначала в виде сетки вы выбираете столбец и делаете его столбцом шаблона следующим образом:

<asp:Template Field Header Text="SavingId" Visible="false">
    <ItemTemplate>
        <asp:Label ID = "lblSavingId" runat="server" Text ='<%#Bind(SavingId")%>' />
    </ItemTemplate>
</asp:TemplateField>

после этого на стороне кодирования вы можете легко получить значение, например:

string id= (gridview1.Rows[i].FindControl("lblSavingId") as label).text;
0 голосов
/ 03 мая 2013

На самом деле я обнаружил, что столбец с Visible = False не будет отображаться в результатах.

Что мне нужно было сделать, чтобы получить желаемое поведение, было установить столбец видимым, а затем скрыть его с помощьюстиль установлен на "видимость: скрытый; дисплей: нет;".Когда я делаю это, я могу получить доступ к значению столбца, выбрав столбец / строку, как указано в некоторых других публикациях.

Вы также можете сделать то же самое, используя скрытое поле, если вы используете DataList, но если вы находитесь в GridView (из вашего поста это звучит так, как будто вы это делаете), вам, возможно, придется применить аналогичный подход.

0 голосов
/ 19 февраля 2011

если ваш скрытый файл находится в сетке, то вы можете найти таким образом:

в событии, связанном с данными элемента:

if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
    // Find the hidden field   
    HiddenField _hdn =
    (HiddenField)e.Item.FindControl("HiddenField Id Put Here"); 
}

надеюсь, что это поможет.

0 голосов
/ 19 февраля 2011

Если «вид» - это ваш GridView:

HiddenField test = view.Rows[0].Cells[0].FindControl("myHiddenField") as HiddenField
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...