WPF ItemsControl ربط البيانات - إضافة المزيد من الضوابط الأولية

StackOverflow https://stackoverflow.com/questions/806967

سؤال

لدي التالية XAML عن databound عناصر التحكم لعرض قائمة من الفئات ، مع تسمية زر لإضافة مجموعة جديدة تظهر لأول مرة:

<WrapPanel Orientation="Horizontal">
    <Label Content="Groups" />
    <Button x:Name="btnGroupAdd" Click="btnGroupAdd_Click" Content="+" />
    <ItemsControl ItemsSource="{Binding}" x:Name="_groupList" >
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <WrapPanel Orientation="Horizontal">
                </WrapPanel>
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Border Padding="3" BorderThickness="1">
                    <WrapPanel>
                        <CheckBox x:Name="_groupEnabled" Click="GroupEnabled_Click" IsChecked="{Binding Path=Checked}">
                            <TextBlock x:Name="_groupName" Text="{Binding Path=Group.Name}" ></TextBlock>
                        </CheckBox>
                        <Button x:Name="_deleteGroup" FontStyle="Normal" Click="DeleteGroup_Click" />
                    </WrapPanel>
                </Border>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>

مع عدد صغير من الجماعات ، كل شيء يبدو على سطر واحد.

المجموعات + Group1 Group2 Group3

عند إضافة المزيد من المجموعات التفاف لوحة تحتوي على العناصر يلتف لكن الأولي تسمية زر لإضافة مجموعة جديدة على التوالي ، مع databound مجموعات ابتداء من الصف التالي.

المجموعات +
Group1 Group2 Group3 Group4
Group5

أستطيع أن أفهم لماذا يحدث هذا ، كما التفاف الألواح المتداخلة.سؤالي هو:كيف يمكنني إدراج أول تسمية زر في التفاف الداخلية الفريق بحيث لا في صف من تلقاء نفسها ؟

المجموعات + Group1 Group2 Group3
Group4 Group5

هل كانت مفيدة؟

المحلول

إذا كنت سعيدا مع هذا:

المجموعات + Group1 Group2 Group3
Group4 Group5

ثم أود أن أقترح استخدام خارجي Grid و الداخلية WrapPanel.وإلا فإن الخيارات الخاصة بك:

  1. وتشمل ضوابط أخرى (Label و Button) أو عرض نموذج reprenting تلك الضوابط في جمع أنت ملزم.
  2. الكتابة الخاصة بك Panel.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top