Pergunta

Iniciar uma nova aplicação Silverlight ... e no código por trás (no "Loaded" evento), colocar esse código:

// This will *NOT* cause an error.
this.LayoutRoot.DataContext = new string[5];

Mas ...

// This *WILL* cause an error!
this.LayoutRoot.DataContext = this;

O erro que é gerado é "O valor não recai no intervalo esperado." BTW, este código funciona 100% em WPF (Windows desenvolvimento) regular, e não deve haver nenhuma razão para que ele não vai funcionar em WPF / E:)

Qualquer pensamento?

Foi útil?

Solução

Você não pode atualmente utilizar elementos visuais como fonte de dados para vinculação de dados no Silverlight 2. Eu acho que isso está previsto para ser adicionado para Silverlight v.Next.

Outras dicas

Você pode usar elementos visuais como fonte de dados se você criar a ligação diretamente no código, mas tentando atribuir elemento visual para DataContext vai jogar ArgumentException. Não faz muito sentido, mas o Silverlight é apenas na versão 2.

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