0

I created list view with check box at column 1, but it's displaying only at header level and in rows i'm getting namespace name.

Here's the XAML code:

        <ListView x:Name="ConfigurationFilesGrid" ItemsSource="{Binding ConfigurationFiles}"
                  SelectedItem="{Binding SelectedProgramFile}"
                  ScrollViewer.CanContentScroll="True" 
                  PreviewMouseDoubleClick="ConfigurationFilesGrid_Reselect"
                  >
            <ListView.View>
                <GridView>
                    <GridViewColumn>
                        <GridViewColumn.HeaderTemplate>
                            <DataTemplate>
                                <CheckBox HorizontalAlignment="Center" VerticalAlignment="Center" IsChecked="{Binding ElementName=ConfigurationMainCtrl, Path=DataContext.IsAllConfigurationSelected}"/>
                            </DataTemplate>
                        </GridViewColumn.HeaderTemplate>
                    </GridViewColumn>
                    <GridViewColumn Header="{x:Static res:Resources.IDColNameTxt}" DisplayMemberBinding="{Binding ID}" />
                    <GridViewColumn Header="{x:Static res:Resources.TypeColHdr}" DisplayMemberBinding="{Binding DisplayType}" />
                    <GridViewColumn Header="{x:Static res:Resources.NameColNameTxt}" DisplayMemberBinding="{Binding Name}"/>
                    <GridViewColumn Header="{x:Static res:Resources.MeterColNameTxt}" DisplayMemberBinding="{Binding MeterType}"/>
                    <GridViewColumn Header="{x:Static res:Resources.RateColNameTxt}" DisplayMemberBinding="{Binding RateDisplay}"/>
                    <GridViewColumn Header="{x:Static res:Resources.CommentColNameTxt}" DisplayMemberBinding="{Binding Comment}"/>
                    <GridViewColumn Header="{x:Static res:Resources.ModifiedDateColNameTxt}" DisplayMemberBinding="{Binding ModifiedDateTime}"/>
                    <GridViewColumn Header="{x:Static res:Resources.ProfileColNameTxt}" DisplayMemberBinding="{Binding Profile}"/>
                </GridView>
            </ListView.View>
        </ListView>

And i'm getting list view like:

[](checkbox)  ID   Name   Address
  name        1     A       X
  name        2     B       Y

But from above i'm getting checkbox only at header level not rows level so what change 'll reflect to checkbox from above xaml code.

Thanks for you help.

Nag

1 Answer 1

1

You've used the HeaderTemplate of the GridViewColumn, use the CellTemplate instead:

<GridViewColumn>
   <GridViewColumn.CellTemplate>
        <DataTemplate>
            <CheckBox HorizontalAlignment="Center" VerticalAlignment="Center" IsChecked="{Binding ElementName=ConfigurationMainCtrl, Path=DataContext.IsAllConfigurationSelected}"/>
        </DataTemplate>
    </GridViewColumn.CellTemplate>
</GridViewColumn>
Sign up to request clarification or add additional context in comments.

2 Comments

But by declaring this i'm not getting checkbox in the column header which is required to select all.
Use both HeaderTemplate and CellTemplate to get both.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.