Ширина на колоната на мрежата - смесете *(звезда), Автоматично и запълнете лявото пространство

Имам ширина на мрежата, следваща дефинициите на колоните:

<Grid.ColumnDefinitions>
        <ColumnDefinition MinWidth="320" MaxWidth="450" Width=".32*"/>
        <ColumnDefinition MinWidth="200" Width="Auto"/>
        <ColumnDefinition MinWidth="200" Width="Auto"/>
        <ColumnDefinition Width="Auto"/> <- (4) should fill all available space
        <ColumnDefinition MinWidth="250" MaxWidth="300" Width=".20*"/>
</Grid.ColumnDefinitions>

Проблемът е, че задаване на ширина на Auto в колона (4) нулира нейната ширина и последната колона е до третата. Бих искал последната колона да е подравнена към десния край на приложението и първите три вляво.

Също така не мога да задам (4) ширина на звезда (*) - очевидно се простира спрямо първата и последната колона.

От известно време се опитвам с хоризонтални подравнявания, но в резултат съдържанието не запълва ширината на колоните. Може би бих могъл да свържа ширината на съдържанието с ширината на колоната или нещо подобно, но съм любопитен дали има някакъв лесен начин за постигане на запълване на (4) колона цялото ляво пространство.


person Joe    schedule 20.04.2012    source източник
comment
Опитвам се да разбера въпроса ви. Защо следното твърдение е проблем? от публикацията ви: Също така не мога да задам (4) ширина на звезда (*) - очевидно се простира спрямо първата и последната колона.   -  person denis morozov    schedule 20.04.2012


Отговори (1)


Мисля, че не разбрахте напълно (*), което означава претеглена средна стойност.

така че за твоя случай.

<Grid.ColumnDefinitions>
     <ColumnDefinition MinWidth="320" MaxWidth="450" Width="3*"/>
     <ColumnDefinition MinWidth="200" Width="Auto"/>
     <ColumnDefinition MinWidth="200" Width="Auto"/>
     <ColumnDefinition Width="5*"/>
     <ColumnDefinition MinWidth="250" MaxWidth="300" Width="2*"/>
 </Grid.ColumnDefinitions> 

ако искате да направите колона (4) малка, намалете * теглото и го увеличете, където искате.

Дано помогне...

person Ankesh    schedule 20.04.2012
comment
Благодаря за отговора. Теглата ги знам - просто го написах различно. Ако напиша .3* и .5* вместо 3* и 5* - няма да има никаква разлика. Проблемът е, че ако задам (4) колона да кажем 5*, тя няма да намали размера си до 0, ако преоразмеря прозореца до малък размер. Искам колона 4 да не влияе на размера на останалите - просто попълнете лявото пространство - ако има такова. - person Joe; 20.04.2012
comment
@Joe, доколкото знам, трябва, защото когато намалите размера.. това намалява съотношението на теглото... опитайте да премахнете всички Auto и да зададете минимална и максимална ширина за същото - person Ankesh; 20.04.2012
comment
За мен работи с Auto, но е добре да знам за атрибутите Min и Max. - person Grault; 20.03.2014