Visualizzazione dei risultati da 1 a 6 su 6

Hybrid View

  1. #1
    Utente di HTML.it L'avatar di exFelino
    Registrato dal
    Jul 2014
    residenza
    Aci Catena (CT)
    Messaggi
    710
    Risolto,
    ho aggiunto una property al mio modello:

    codice:
    [DisplayName("IsChecked")]
    public bool IsChecked { get; set; }
    nel mio CS ho inserito:
    codice:
    private void HeadCheck(object sender, RoutedEventArgs e, bool IsChecked)
    {
    	var items = dgPlan.Items.OfType<AnalysisPlanItem>();
    	foreach (var item in items)
    	{
    		item.IsChecked = IsChecked;
    	}
    
    
    	dgPlan.Items.Refresh();
    }
    
    
    private void chkbxSelectAll_Checked(object sender, RoutedEventArgs e)
    {
    	HeadCheck(sender, e, true);
    }
    
    
    private void chkbxSelectAll_Unchecked(object sender, RoutedEventArgs e)
    {
    	HeadCheck(sender, e, false);
    }
    nello XAML:
    codice:
    <DataGridTemplateColumn>
    	<DataGridTemplateColumn.Header>
    		<CheckBox Name="chkbxSelectAll" Checked="chkbxSelectAll_Checked" Unchecked="chkbxSelectAll_Unchecked" />
    	</DataGridTemplateColumn.Header>
    	<DataGridTemplateColumn.CellTemplate>
    		<DataTemplate>
    			<CheckBox x:Name="CheckBox" IsChecked="{Binding IsChecked}" PreviewMouseLeftButtonDown="CheckBox_PreviewMouseLeftButtonDown" />
    		</DataTemplate>
    	</DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>
    Il mio obiettivo era non intaccare il modello...ma alla fine si è rilevata la strada più semplice.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2011
    Messaggi
    237
    Quote Originariamente inviata da exFelino Visualizza il messaggio
    Risolto,
    ho aggiunto una property al mio modello:

    codice:
    [DisplayName("IsChecked")]
    public bool IsChecked { get; set; }
    nel mio CS ho inserito:
    codice:
    private void HeadCheck(object sender, RoutedEventArgs e, bool IsChecked)
    {
        var items = dgPlan.Items.OfType<AnalysisPlanItem>();
        foreach (var item in items)
        {
            item.IsChecked = IsChecked;
        }
    
    
        dgPlan.Items.Refresh();
    }
    
    
    private void chkbxSelectAll_Checked(object sender, RoutedEventArgs e)
    {
        HeadCheck(sender, e, true);
    }
    
    
    private void chkbxSelectAll_Unchecked(object sender, RoutedEventArgs e)
    {
        HeadCheck(sender, e, false);
    }
    nello XAML:
    codice:
    <DataGridTemplateColumn>
        <DataGridTemplateColumn.Header>
            <CheckBox Name="chkbxSelectAll" Checked="chkbxSelectAll_Checked" Unchecked="chkbxSelectAll_Unchecked" />
        </DataGridTemplateColumn.Header>
        <DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
                <CheckBox x:Name="CheckBox" IsChecked="{Binding IsChecked}" PreviewMouseLeftButtonDown="CheckBox_PreviewMouseLeftButtonDown" />
            </DataTemplate>
        </DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>
    Il mio obiettivo era non intaccare il modello...ma alla fine si è rilevata la strada più semplice.
    Basta anche una funzione solo, che fa check/Uncheck. A ogni click fai la negazione (!) del valore bool della proprietà isChecked

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.