Domanda

Il tentativo di legarsi a una collezione in WPF, ho ottenuto il seguente al lavoro:

XAML:

<toolkit:DataGrid Name="dgPeoples"/>

CS:

namespace DataGrid
{
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1
    {
        private readonly ObservableCollection<Person> personList = new ObservableCollection<Person>();

        public Window1()
        {
            InitializeComponent();

            personList.Add(new Person("George", "Jung"));
            personList.Add(new Person("Jim", "Jefferson"));
            personList.Add(new Person("Amy", "Smith"));

            dgPeoples.ItemsSource = personList;
        }
    }
}

unnessecary probabilmente ma qui è classe Persona:

namespace DataGrid
{
    public class Person
    {
        public string fName { get; set; }
        public string lName { get; set; }

        public Person(string firstName, string lastName)
        {
            fName = firstName;
            lName = lastName;
        }
    }
}

Ma quello che ho veramente bisogno è presente in DataGridComboBoxColumn s'. Qui sono le mie revisioni:

XAML:

<toolkit:DataGrid Name="dgPeoples" Grid.Row="0" AutoGenerateColumns="False">
    <toolkit:DataGrid.Columns>
        <toolkit:DataGridComboBoxColumn Width="5*"/>
        <toolkit:DataGridComboBoxColumn Width="5*"/>
    </toolkit:DataGrid.Columns>
</toolkit:DataGrid>

C #:

Soggiorni stessa.

problema ora è che ricevo colonne combobox vuote! Tutte le idee come posso ottenere questo lavoro?

Nel lungo periodo ho bisogno di 2 modo vincolante, in cui un doppio click sulla colonna di cognome fa apparire la casella comobo che poi contiene le opzioni di tutti i possibili nomi in collezione (cioè George, Jim e Amy).

Grateful alcuna assistenza!

È stato utile?

Soluzione

Volevo solo puntare a uno dei migliori di riferimento quando si tratta di WPF Toolkit DataGrid, viene da da Samuel Moura ho scaricato le 15 campioni e tenere a portata di mano, vi sto dando il link perchè troverete la serie dopo DataGrid più utile di qualsiasi riferimento di me si può dare risposta il più velocemente

Altri suggerimenti

Il DataGrid ha bisogno di avere delle proprietà Header e ItemsSource impostare:

<toolkit:DataGrid Name="dgPeoples" Grid.Row="0" AutoGenerateColumns="False">
    <toolkit:DataGrid.Columns>
        <toolkit:DataGridComboBoxColumn Width="5*"
            Header="First Name"
            ItemsSource="{Binding Path=fName}"/>
        <toolkit:DataGridComboBoxColumn Width="5*"
            Header="First Name"
            ItemsSource="{Binding Path=lName}"/>
    </toolkit:DataGrid.Columns>
</toolkit:DataGrid>

Sembra ci fosse in circolazione in una delle release del toolkit quando si utilizza il DataGridComboBoxColumn.ItemsSource: DataGridComboBoxColumn.ItemsSource non funziona .

Tuttavia, v'è stato un work-around creato per noreferrer Uso caselle combinate con il WPF DataGrid WPF datagrid. Infine, si consiglia di dare un'occhiata a questo articolo Più divertimento con DataGrid di Margaret Parsons pure.

Modifica
Ora io non sono così sicuro il codice precedente funziona. L'ho fatto a memoria e fatto riferimento gli altri collegamenti come risorse.

Date un'occhiata a questo SO messaggio che appare per affrontare questo problema: vincolante DataGridComboBoxColumn.ItemsSource

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top