user13657
user13657

Reputation: 765

Make grid width same as listview in DataTemplate

I'd like to have grid width same as listview width, right now it looks like:

enter image description here

But what i want to reach is: enter image description here

Code:

<DataTemplate x:Key="Shared">
            <ListView Name="_lv"  ItemsSource="{Binding lista}">
                <ListView.ItemContainerStyle>
                    <Style TargetType="ListViewItem">
                        <Setter Property="HorizontalContentAlignment" Value="Stretch" />
                    </Style>
                </ListView.ItemContainerStyle>
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <Grid>
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*"/>
                                <ColumnDefinition Width="*"/>
                            </Grid.ColumnDefinitions>
                            <Label Grid.Column="0" Content="{Binding name}"/>
                            <Grid Grid.Column="1">
                                <WrapPanel Orientation="Horizontal">
                                    <telerik:RadNumericUpDown Name="minRNUD" Value="0" />
                                    <Button Width="40" Height="40" Style="{StaticResource MButton}" Margin="0" Padding="1">
                                        <Button.Content>
                                            <Image Source="/myProject;component/Pictures/clr.png" Width="30" Height="30" HorizontalAlignment="Center" VerticalAlignment="Center" />
                                        </Button.Content>
                                    </Button>
                                </WrapPanel>
                            </Grid>
                        </Grid>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
        </DataTemplate>

Any ideas? Thanks!

Upvotes: 0

Views: 931

Answers (1)

pushpraj
pushpraj

Reputation: 13669

HorizontalContentAlignment property determines the horizontal alignment of the content

setting HorizontalContentAlignment on the list items may affect it's content not the item itself

however setting the same on the parent items control like ListBox, ListView etc. will affect the alignment of their content or can say the items

so simply moving the HorizontalContentAlignment property to the parent ItemsControl (ListBox, ListView etc). will ensure the desired alignment of the items.

so simply add the property HorizontalContentAlignment="Stretch" to the parent items control of the desired item.

Upvotes: 1

Related Questions