Salve a tutti,
sto cominciando da poco a creare dei controlli personalizzati e adesso mi sono ritrovato di fronte ad un muro.

Sto cercando di creare un controllo che mi crei in automatico una tabella.
Le proprietà che ho creato sono le seguenti:

BlockWidth - che imposta la larghezza della tabella
NumberCell - che mi imposta il numero di celle che deve contenere

Adesso avrei bisogno di creare una proprietà tipo DataSource che mi permetta, passandogli un array di stringhe di di inserire in ogni cella il valore dell'elemento corrispondente.

Spero di essere stato chiaro e di ricevere un aiuto o un consiglio su come posso fare questa cosa. Grazie!

Quello che ho scritto finora è questo:

Lo utilizzo con

codice:
<%@ Register TagPrefix = "Content" TagName = "Block" Src = "block.ascx" %>
<Content:Block ID="block1" NumberCell="10" BlockWidth="1000" CellString="pippo" runat="server"/>
Il codice del controllo invece è questo

codice:
<script language="c#" runat="server">
private int block_width = 500;	// Dimensione blocco
private int n_cell = 1;			// Numero celle nel blocco

private void Page_Load()
{
	
	for(int x = 1 ; x < n_cell; x++)
	{
		string cell_width = Convert.ToString(block_width/n_cell);
		
		HtmlTableCell cell = new HtmlTableCell();
		cell.ID = "cell" + Convert.ToString(x);
		cell.InnerHtml = Convert.ToString(x);
		cell.Width = cell_width;
		row.Controls.Add(cell);
	}
}

public string BlockWidth
{
  get 
  {
	 return Convert.ToString(block_width);
  }
  set 
  {
	 block_width = Convert.ToInt32(value);
  }
}

public string NumberCell
{
  get 
  {
	 return Convert.ToString(n_cell);
  }
  set 
  {
	 n_cell = Convert.ToInt32(value);
  }
}
</script>

<table border="1" cellpadding="0" cellspacing="0">
	<tr id="row" runat="server">
	</tr>
</table>