У меня есть вид сетки. Он имеет две связанные столбцы. Мне нужно иметь столбец серийного номера в качестве первого столбца.Чтобы добавить серийный номер в качестве первого столбца в GridView
Как я могу это сделать? Спасибо, в Advance
У меня есть вид сетки. Он имеет две связанные столбцы. Мне нужно иметь столбец серийного номера в качестве первого столбца.Чтобы добавить серийный номер в качестве первого столбца в GridView
Как я могу это сделать? Спасибо, в Advance
Создание DataTable с двумя столбцами используют первую колонку Autoincrement как истинный и AutoIncrementStep = 1, как
DataTable _test = new DataTable();
DataColumn c = new DataColumn("sno", typeof(int));
c.AutoIncrement = true;
c.AutoIncrementSeed = 1;
c.AutoIncrementStep = 1;
_test.Columns.Add(c);
_test.Columns.Add("description");
gvlisting.DataSource = _test;
Использование Строка индексирует связанное поле или связанную строку данных, вы можете добавить столбец шаблона, в котором вы можете использовать индекс строки.
<asp:TemplateField HeaderText="S No">
<ItemTemplate>
<%# Container.DataItemIndex + 1 %>
</ItemTemplate>
<ItemStyle Width="2%" />
</asp:TemplateField>
заслуживает большего внимания – rDroid
Это больше адъюнкт ответа на исходный вопрос в ФП в. У меня было ужасное время выяснить, как получить номер индекса (серийный номер в OP) строки, созданной ответом R.Ilayaraja (который отлично работал BTW).
В коде позади страницы, если вы хотите, чтобы получить порядковый номер строки, вы можете использовать код, подобный этому:
Int32 idNumber = Convert.ToInt32(gvlisting.Rows[i].DataItemIndex.ToString()) + 1;
Это предполагает, что вы использовали итератор «я», чтобы получить другие значения из ваших строк, и вам нужно добавить его к числу, поскольку индекс является порядковым (индекс 0 является первой строкой). Если вы не используете итератор, просто используйте .Rows[0]
Я изо всех сил старался как самородка ASP.NET, чтобы понять это, поэтому я решил, что опубликую это, надеюсь, что он поможет некоторым другим нубам, таким как я.
Добавить столбец Ser
и установить его на ReadOnly=false
.
Затем добавьте этот код в приложение:
if (GridSearch.Rows.Count > 1)
{
for (int i = 0; i < GridSearch.Rows.Count-1; i++)
{
GridSearch.Rows[i].Cells[0].Value = (i + 1).ToString();
}
}
Просто добавьте этот код в GridView
<asp:TemplateField HeaderText="Serial No of Users">
<ItemTemplate>
<%# ((GridViewRow)Container).RowIndex + 1%>
</ItemTemplate>
<FooterTemplate>
<asp:Label ID="lbltotalall" runat="server" />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="SR No">
<ItemTemplate>
<%# Container.DataItemIndex + 1 %>
</ItemTemplate>
<ItemStyle Width="5%" />
</asp:TemplateField>
Как серийный номер вычисляется из данных? –
Спасибо, Питер. Серийный номер не вычисляется из данных. Он просто должен увеличиваться с шагом 1, начиная с 1. – Ananth