Pergunta

Tentando se ligam a uma coleção em WPF, eu tenho o seguinte para o trabalho:

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 provavelmente, mas aqui é classe Pessoa:

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;
        }
    }
}

Mas o que eu realmente preciso é isso em DataGridComboBoxColumn 's. Aqui estão as minhas revisões:

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 #:

Stays mesmo.

Problema agora é que eu tenho colunas combobox vazias! Alguma idéia de como eu posso chegar a este trabalho?

No longo prazo, eu preciso de 2 vias de ligação, onde um duplo clique na coluna firstname abre a caixa de comobo que então mantém as opções de todos os nomes possíveis na coleção (ou seja, George, Jim e Amy).

Grateful todo o auxílio!

Foi útil?

Solução

Eu só queria que você aponte para um dos melhores de referência quando se trata do WPF Toolkit DataGrid, vem de de Samuel Moura Eu baixei as 15 amostras e mantê-los à mão, eu vou te dar o link, porque você vai encontrar as séries pós Datagrid mais útil do que qualquer referência do que eu pode dar-lhe como resposta rápida

Outras dicas

O DataGrid precisa ter as propriedades Header e ItemsSource definido:

<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>

Parece não estava em questão em uma das versões do kit de ferramentas ao usar o DataGridComboBoxColumn.ItemsSource: DataGridComboBoxColumn.ItemsSource não funciona .

No entanto, não foi um trabalho em torno criado para Usando caixas de combinação com o WPF DataGrid . Finalmente, você pode querer dar uma olhada no artigo Mais diversão com DataGrid por Margaret Parsons também.

Editar
Agora eu não estou tão certo o código acima funciona. Eu fiz isso a partir da memória e referenciados os outros links como recursos.

Dê uma olhada neste post SO que aparece para resolver este problema: Problema de ligação DataGridComboBoxColumn.ItemsSource

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top