فحص برنامج الأغذية العالمي السؤال مربع القائمة

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

  •  06-07-2019
  •  | 
  •  

سؤال

وأنا خلق مربع قائمة التحقق مع القالب التالي:

<Style x:Key="CheckBoxListStyle" TargetType="{x:Type ListBox}">
            <Setter Property="SelectionMode" Value="Multiple"></Setter>
            <Setter Property="ItemContainerStyle">
                <Setter.Value>
                    <Style TargetType="{x:Type ListBoxItem}" >
                        <Setter Property="Margin" Value="2" />
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="{x:Type ListBoxItem}">
                                    <CheckBox IsChecked="{Binding Path=xxxxxxxxxxx,RelativeSource={RelativeSource TemplatedParent},Mode=TwoWay}">                                                                             <ContentPresenter></ContentPresenter>
                                    </CheckBox>
                                </ControlTemplate>
                            </Setter.Value>
                        </Setter>
                    </Style>
                </Setter.Value>
            </Setter>
        </Style>

 <ListBox Style="{StaticResource CheckBoxListStyle}" ItemsSource="{Binding Path=Configuration.ProductTypes}" DisplayMemberPath="ProductName" />  

ومشكلتي هي، وأنا على الحصول على جميع أنواع المنتجات من قاعدة البيانات والربط إلى itemssource مربع القائمة. لدي فئة المنتج الذي يحتوي على قائمة من أنواع المنتجات التي تنتمي إليها. ولست بحاجة لتعيين الخاصية IsChecked من خانات الاختيار على أساس قائمة نوع المنتج المنتج. عادة أنا بحاجة إلى مجموعة واحدة أو أكثر من خانات الاختيار الملكية IsChecked. قد تنتمي المنتج إلى 1 أو أكثر من أنواع المنتجات. ووضع الاختيار هو تحديد متعدد. إذا يتحقق المستخدم خانات الاختيار نوع المنتج إضافية .. أنا بحاجة للحصول على مجموع فحص مربعات القائمة وحفظها في قاعدة البيانات ... هذا هو تطبيق MVVM WPF ... أي أفكار بشأن كيفية حل هذا السيناريو ... < br> و في controltemplate ما سيتم هو IsChecked الطريق؟

والشكر ري

واسمحوا لي أن simplyfy سؤالي: أنا بحاجة إلى مربع القائمة مع مربع وtextblock. السياق البيانات textblock مختلفة وسياق البيانات خانة الاختيار مختلفة. أعني أنها تحصل على البيانات الخاصة بهم من كائنات مختلفة. أي فكرة عن كيفية تحقيق ذلك ...

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

المحلول

<اقتباس فقرة>   

واسمحوا لي أن simplyfy سؤالي: أحتاج إلى   مربع القائمة مع مربع وtextblock.   السياق البيانات textblock مختلفة   والسياق البيانات خانة الاختيار   مختلف. أعني أنها تحصل على البيانات الخاصة بهم   من كائنات مختلفة. أي فكرة عن كيفية   تحقيق ذلك ...

وإنشاء فئة جديدة (أ ViewModel) الذي يحتوي على السياقات اثنين من البيانات (MODEL1 وMODEL2) وربط البيانات إليه، والمعروف أيضا باسم نمط MVVM.

نصائح أخرى

والطبقة ProductType أنك ملزم لمربع القائمة يجب أن يكون قراءة / كتابة خاصية تسمى IsSelected أو IsChecked أنه يمكنك ربط. ثم بدلا من استخدام ControlTemplate، استخدم DataTemplate على ListBox.ItemTemplate وربط الملكية IsChecked في خانة الاختيار لتلك الممتلكات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top