Here I have created sample that will help you out.
HTML
<div>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
Enter Number of Rows Count:
</td>
<td>
<asp:TextBox ID="txtRows" runat="server" />
</td>
</tr>
<tr>
<td>
Enter Number of Columns Count:
</td>
<td>
<asp:TextBox ID="txtColumns" runat="server" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<asp:Button ID="btnCreate" Text="Create" runat="server" OnClick="Create" />
</td>
</tr>
</table>
<br />
<br />
<asp:GridView ID="gvData" runat="server" AutoGenerateColumns="true" />
</div>
Code
protected void Create(object sender, EventArgs e)
{
this.gvData.DataSource = CreateData(Convert.ToInt32(txtRows.Text.Trim()), Convert.ToInt32(txtColumns.Text.Trim()));
this.gvData.DataBind();
}
private DataTable CreateData(int rows, int columns)
{
DataTable dt = new DataTable();
for (int col = 0; col < columns + 1; col++)
{
string letter = " ";
if (col != 0)
{
letter = (col).ToString();
}
dt.Columns.Add(letter);
}
for (int i = 0; i < rows; i++)
{
DataRow dr = dt.NewRow();
for (int row = 0; row < columns + 1; row++)
{
if (row == 0)
{
dr[row] = GetLetter(i + 1);
}
else
{
dr[row] = (row).ToString();
}
}
dt.Rows.Add(dr);
}
return dt;
}
public string GetLetter(int column)
{
string columnString = "";
decimal columnNumber = column;
while (columnNumber > 0)
{
decimal currentLetterNumber = (columnNumber - 1) % 26;
char currentLetter = (char)(currentLetterNumber + 65);
columnString = currentLetter + columnString;
columnNumber = (columnNumber - (currentLetterNumber + 1)) / 26;
}
return columnString;
}
Screenshot
![](http://i.imgur.com/oMAnwSe.gif)