Domanda

Devo effettuare la casella di riepilogo con TextBox in esso ... e deve essere dinamico.Ho una raccolta osservabile nel codice dietro e voglio legarlo per listbox.Voglio la casella di riepilogo dinamica e questo elenco dovrebbe avere una casella di testo modificabile in esso.Quindi, in pratica voglio associare la casella di testo multiplr da elenco.Qualsiasi aiuto sarebbe apprezzato

<ListBox HorizontalAlignment="Left" Name="ListTwo" Height="100" Margin="286.769,165.499,0,0" VerticalAlignment="Top" Width="100" ItemsSource="{Binding Source=obs}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBox Name="TextBoxList"></TextBox>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
.

In questo modo, ho il numero di textbox come gli articoli nella collezione osservabile, ma il testo della casella di testo non è impostato.

È stato utile?

Soluzione

Dovrai vincolare la tua casella di testo alla proprietà nella tua classe di quale raccolta osservabile hai legato

<ListBox HorizontalAlignment="Left" Name="ListTwo" Height="100" Margin="286.769,165.499,0,0" VerticalAlignment="Top" Width="100" ItemsSource="{Binding Source=obs}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBox Binding="{Binding PROPERTYINCLASS}"></TextBox>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
.

Altri suggerimenti

Se gli elementi nel ObservableCollection sono solo semplici generatori di generazioneGodes, quindi è possibile legarsi a tutto il valore stringa come questo:

<ListBox Name="ListTwo" ItemsSource="{Binding Source=obs}" ... >
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBox Name="TextBoxList" Text="{Binding}" />
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
.

Dal string Property Pagina su MSDN:

.

Opzionalmente, un percorso (.) può essere utilizzato per legare alla sorgente corrente.Ad esempio, Binding.Path è equivalente a Text="{Binding}".

Nota che se avete avuto alcuni oggetti con proprietà nella raccolta, allora la risposta di @ NIT sarebbe stata corretta come dovresti fare riferimento al nome della proprietà pertinente:

<ListBox Name="ListTwo" ItemsSource="{Binding Source=obs}" ... >
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBox Name="TextBoxList" Text="{Binding PropertyName}" />
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
.

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