Bind textbox list inside listbox in wpf

后端 未结 2 1138
野的像风
野的像风 2021-01-24 20:01

I have to make listbox with textbox in it... and it has to be dynamic. I have observable collection in code behind and I want to bind that for listbox. I want dynamic listbox an

相关标签:
2条回答
  • 2021-01-24 20:28

    You will have to Bind your textbox to the property in your class of which observable collection you have bound

    <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>
    
    0 讨论(0)
  • 2021-01-24 20:28

    If the items in your ObservableCollection are just plain strings, then you can data bind to the whole string value like this:

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

    From the Binding.Path Property page on MSDN:

    Optionally, a period (.) path can be used to bind to the current source. For example, Text="{Binding}" is equivalent to Text="{Binding Path=.}".

    Note that if you had some objects with properties in the collection, then @nit's answer would have been correct as you would need to reference the relevant property name:

    <ListBox Name="ListTwo" ItemsSource="{Binding Source=obs}" ... >
        <ListBox.ItemTemplate>
            <DataTemplate>
                <TextBox Name="TextBoxList" Text="{Binding PropertyName}" />
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
    
    0 讨论(0)
提交回复
热议问题