Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用WPF删除网格中的最后一行?_C#_Wpf_Grid - Fatal编程技术网

C# 如何使用WPF删除网格中的最后一行?

C# 如何使用WPF删除网格中的最后一行?,c#,wpf,grid,C#,Wpf,Grid,我的Wpf UI中有两个按钮,分别名为“添加”、“删除”。我的要求是,如果我单击“添加”按钮,它必须添加包含两列的新行。如果单击“删除”按钮,则必须删除最后插入的行。我正在使用网格进行此操作。 我想从网格中删除最后一行。我可以添加两列的行。我有删除的代码。但它说了一些错误。如果单击“删除”按钮,我不知道如何完全删除最后插入的行。我有以下代码 public int count = 1; private void btn_add_Click(object sender, RoutedEven

我的Wpf UI中有两个按钮,分别名为“添加”、“删除”。我的要求是,如果我单击“添加”按钮,它必须添加包含两列的新行。如果单击“删除”按钮,则必须删除最后插入的行。我正在使用网格进行此操作。 我想从网格中删除最后一行。我可以添加两列的行。我有删除的代码。但它说了一些错误。如果单击“删除”按钮,我不知道如何完全删除最后插入的行。我有以下代码

public int count = 1;
    private void btn_add_Click(object sender, RoutedEventArgs e)
    {
        //Creating Rows..
        RowDefinition row0 = new RowDefinition();
        row0.Height = new GridLength(30);
        grid1.RowDefinitions.Add(row0);

        //Creating columns..
        ColumnDefinition col0 = new ColumnDefinition();
        ColumnDefinition col1 = new ColumnDefinition();
        ColumnDefinition col2 = new ColumnDefinition();
        col0.Width = new GridLength(100);
        col1.Width = new GridLength(100);

        grid1.ColumnDefinitions.Add(col0);
        grid1.ColumnDefinitions.Add(col1);


        int i = count;
        ComboBox cmb = new ComboBox();
        cmb.Items.Add("add");
        cmb.Items.Add("remove");

        Grid.SetRow(cmb, i);
        Grid.SetColumn(cmb, 0);

        grid1.Children.Add(cmb);

        TextBox txt = new TextBox();
        Grid.SetRow(txt, i);
        Grid.SetColumn(txt, 1);
        grid1.Children.Add(txt);
        count++;
    }

    private void btn_remove_Click(object sender, RoutedEventArgs e)
    {
        grid1.RowDefinitions.RemoveAt(count);
        count--;
    }

删除最后一行通常不需要额外的计数器,只需使用:

  grid1.RowDefinitions.RemoveAt(grid1.RowDefinitions.Count - 1);

不要忘记删除最后一个子/组合框:
grid1.Children.RemoveAt(grid1.Children.Count-1)