Hi Linda,
>I have a Windows form on which I need to display a series of text boxes, each displaying the value of a field from a different row of the dataset. In FoxPro, one way I have done is by using a macro to get an indirect reference to the text box name.
>
>For example:
>
>
>* Using the indirect reference
>lcBaseName = "TypeDesc"
>lcRowCount = 1
>use myTable
>scan
> lcCurrentTextBox = lcBaseName + str(lnRowCount)
> &lcCurrentTextBox.Value = myTable.TypeDesc
>endfor
>
>
>
>In .NET, I tried creating a variable with a type of Control and building it's name property using a counter but I couldn't get that to work.
>
>The other way I have done this in FoxPro is to set the ControlSource to an element of an array built from the table. In .NET, I tried creating an arraylist from the table and assigning an element to the BindingSource and the Text properties (not at the same time) with no success.
>
>Does anyone have any suggestions? I really don't want to hard code this if I can avoid it.
>
>Thanks in advance.
You can reference controls with something like this:
If you have a textbox named "txtSpecial1" you could find it with this and change it's text property.
int i = 1;
foreach (Control c in Controls)
{
if (c is TextBox)
{
if (c.Name == "txtSpecial" + i.ToString()
{
c.Text = "MyText" + i.ToString();
}
}
}
I hope that helps to get you started.
Tim
Timothy Bryan