Итак, я написал некоторый код, который создает TextBlocks из списка строк, вызывая цикл for:
List<string> menuPages = new List<string>() { "Home", "Media", "Settings" };
//method called from constructor:
private void createHeaders ()
{
for (int i=0; i<menuPages.Count; i++)
{
TextBlock iheader = new TextBlock();
iheader.Name = menuPages[i];
iheader.Text = menuPages[i];
if (i==pageIndex)
{ iheader.FontSize = 36; }
else
{ iheader.FontSize = 32; }
stacky.Children.Add(iheader); //Adding button to stack panel
}
}
Теперь я пишу другой метод, который будет циклически проходить через каждый TextBlock в цикле.и изменить текст на то, что я намерен.Я бы получил цикл foreach, работающий для детей stackPanel: (TextBlock tBlock в stacky.Children), но мне нужно работать с индексированным циклом for.Приведенный ниже код - это то, как я ХОЧУ добиться этого:
//Re-render headers
for (int i = 0; i < menuPages.Count; i++)
{
//TextBlock menuPages[i].text = "foo";
}
Теперь, конечно, синтаксис, приведенный выше, не работает, поэтому мой вопрос: как я могу обратиться к TextBlocks из строк в списке?