2016-09-23 7 views
0

Что я хочу сделать следующее, у меня есть MainWindow с 3 dataGrids, которые содержатся в StackPanel, и что я хочу здесь сделать, я хочу изменить размер datagrid шириной до: например, 30% экранов, потому что есть 3 datagrids, это будет 90% пространства ширины экрана, и это нормально, потому что я буду использовать только MainWindow и dataGrids для представления некоторых данных. И важно отметить, что я буду использовать его на разных размерах мониторов/дисплеев.WPF set dataGrid witdth до 30% ширины экрана или родителя

Вот образ того, что я говорю: enter image description here

, как вы можете видеть, потому что у меня нет каких-либо данных в DataGrids они очень узкие. И как я могу сохранить их ширину на 30% от этой панели стека или что угодно, с данными или нет, я хочу, чтобы dataGrids оставались шириной 30% экрана.

MinWidth="" 

или что-то в этом роде?

Спасибо, ребята, ура

PS Я проверил это на маленьком экране и, когда я заполняю DataGrids с данными, я не могу увидеть третий DataGrid вообще :(

ответ

1

Используйте Grid столбцы. Ширина =»п * "означает пропорциональную установку ширины: 3 + 3 + 3 + 1 == 10, поэтому ширина столбца« 3 * »в этом случае будет составлять три десятых от общей ширины. Они будут соответствующим образом изменяться по мере растягивания родитель.

<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="3*" /> 
     <ColumnDefinition Width="3*" /> 
     <ColumnDefinition Width="3*" /> 
     <ColumnDefinition Width="1*" /> 
    </Grid.ColumnDefinitions> 

    <DataGrid Grid.Column="0"> 
    </DataGrid> 

    <DataGrid Grid.Column="1"> 
    </DataGrid> 

    <DataGrid Grid.Column="2"> 
    </DataGrid> 

    <!-- You don't need a control to fill the remaining 1* column. --> 
</Grid> 
+0

Я сделал этот коврик e, и это acctualy работает, он разделяет datagrids на экране и его удивительный, но почему я больше не вижу свои данные в сетке? прежде чем я использовал: 'datagrid1.ItemsSource = OrdersController.localOrders();' и он работал, и теперь я не вижу никаких данных, когда запускаю приложение wpf. похоже, что datagrids пусты. –

+0

@ Roxy'Pro У моего XAML нет имен. Я не стал переписывать все ваши атрибуты с вашего скриншота (я мог бы беспокоиться, если бы мог скопировать текст, а не повторять скриншот). Вы ввели мой точный XAML, не указав DataGrids их имена? –

+0

Я выложу полный код, я решил оставить только одну сетку, но я опубликую редактирование на этом посту, у меня есть еще один вопрос, вот как я могу установить ширину столбцов/цвет и ширину заголовка столбца. так что если бы вы могли мне помочь в этом, я бы очень признателен и благодарю за ответ! –