Я начал разработку приложения для Windows-телефона, где я динамически создаю строку в сетке. При некоторых условиях мне нужно удалить строку и весь ее контент в этой строке.Как удалить строку в сетке в телефоне Windows C# 8.1
Вот мой пример кода.
result = e.Parameter as string;
string[] acst = result.Split('|');
int j = 0;
root2.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(10) });
for (int i = 6; i < acst.Length - 1; i++)
{
TextBlock mytextblock = new TextBlock();
mytextblock.Name = "txtDetails" + root2.Children.Count + 1;
mytextblock.Text = acst[i + 1];
if (mytextblock.Text != "")
{
if (mytextblock.Text.Trim() != "0.00") // if result is 0.00 then i have to delete all the content in that row.
{
if (j == 0)
{
mytextblock.FontSize = 14;
mytextblock.IsTextScaleFactorEnabled = false;
mytextblock.HorizontalAlignment = HorizontalAlignment.Stretch;
mytextblock.VerticalAlignment = VerticalAlignment.Center;
Grid.SetColumn(mytextblock, 1);
Grid.SetRow(mytextblock, (i)/6);
j++;
}
else if (j == 1)
{
mytextblock.FontSize = 14;
mytextblock.IsTextScaleFactorEnabled = false;
mytextblock.Visibility = Visibility.Collapsed;
mytextblock.HorizontalAlignment = HorizontalAlignment.Center;
mytextblock.VerticalAlignment = VerticalAlignment.Center;
Grid.SetColumn(mytextblock, 2);
Grid.SetRow(mytextblock, (i)/6);
j++;
}
else if (j == 2)
{
mytextblock.FontSize = 14;
mytextblock.IsTextScaleFactorEnabled = false;
mytextblock.TextWrapping = TextWrapping.Wrap;
mytextblock.HorizontalAlignment = HorizontalAlignment.Left;
mytextblock.VerticalAlignment = VerticalAlignment.Center;
Grid.SetColumn(mytextblock, 3);
Grid.SetRow(mytextblock, (i)/6);
j=0;
root2.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(60) });
}
}
root2.Children.Add(mytextblock);
}
else
{
root2.RowDefinitions.RemoveAt((i/6)); // here I'm getting Arugument Exception
}
}
, например, если я получаю mytextblock.text = 0.00 в третьем столбце (J = 2 в этом случае). мне нужно удалить содержимое в столбцах 1 и 2 или удалить конкретную строку.
Я пробовал «root2.RowDefinitions.RemoveAt», но там я получаю исключение Arugument. Где я скучаю?
Любая помощь будет высоко оценена.
Отлично. Теперь я получаю результат без исключения. но удаляется столбец, содержащий 0,00 в одной строке. Мне нужна вся строка, которую нужно удалить. Как достичь этого. – JMR