Как предотвратить полный крах WPF Gridviewcolumn - PullRequest
0 голосов
/ 18 января 2019

У меня есть столбцы Gridview, определенные в GridView. Я хочу предотвратить коллапс сетки столбцов при включенном переупорядочении столбцов. Я пытался установить минимальную ширину для GridViewColumnHeader, но все же я мог видеть, что GridViewColumn свернут.

Я пытался установить IsHitTestVisible = "False", но GridViewColumn не смог этого достичь.

1 Ответ

0 голосов
/ 11 марта 2019

Наконец-то я смог установить размер столбцов, чтобы они сворачивались при перетаскивании. Вот пример кода, который я добавил в коде позади. Возможно, какой-то другой путь через xaml, но я не смог сделать это.

 private void connectedReadersListView_DragDelta(object sender, System.Windows.Controls.Primitives.DragDeltaEventArgs e)
        {
            Thumb senderAsThumb = e.OriginalSource as Thumb;
            GridViewColumnHeader header = senderAsThumb.TemplatedParent as GridViewColumnHeader;
            if (header.Content.ToString() == "System.Windows.Controls.Button: READ" && header.Column.ActualWidth < 60)
            {
                header.Column.Width = 60;
            }
            if (header.Content.ToString() == "System.Windows.Controls.Button: DISCONNECT" && header.Column.ActualWidth < 160)
            {
                header.Column.Width = 160;
            }

            if (header != null && header.Content != null)
            {
                switch (header.Content.ToString().Trim().ToLower())
                {
                    case "reader name":
                        if (header.Column.ActualWidth < 150)
                        {
                            header.Column.Width = 150;
                        }
                        break;
                    case "model":
                        if (header.Column.ActualWidth < 50)
                        {
                            header.Column.Width = 50;
                        }
                        break;
...