الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مساعدة كود برمجي باستخدام WPF

بدأه marmssm في 10 مارس 2016 · 5 رد · 756 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله 

عملت مشروع صغير باستخدام C# & WPF ويتم فيه اضافة مستخدم والتعديل ع بيناته وعرض المستخدمين الموجودين ، و عملت تعريف القاعدة بطبقة والواجهات بطبقة اخرى (MVVM) واريد الان المساعدة فيعمل واجهه تسجيل الدخول وكذلك عند عرض البيانات في List لا تعرض البيانات الجديدة الا بعد اعادة تشغيل البرنامج فكيف اعمل عرض تلقائي ؟

وشكرا لكم

#2

لعرض البيانات الجديدة فإن INotifyPropertyChanged كفيلة بالحفاظ على تحديث الواجهة كلما حصل تغيير في الـ Model أو الـ ViewModel.

أما عن عرض واجهة الدخول فهذا يعتمد على مدى مطابقة برنامجك لنمط MVVM و الإطار المستخدم إن وجد.

تفاصيل أكثر أو أجزاء من الشفرة قد تساعد في فهم مشكلتك ومحاولة المساعدة.

#3

بالنسبة للعرض البيانات فقد عملت  INotifyPropertyChanged  ولكنها لا تتحدث تلقائيا عند استخدام ال list وهذا كود تعرفها داخل view

<ListBox Grid.Row="1" ItemsSource="{Binding Users}" Margin="0,10" SelectedValuePath="User_id" SelectedValue="{Binding SelectedUserID}" Width="720">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Orientation="Vertical">
                                <Border Style="{StaticResource DetailHeaderBorder2}">
                                    <TextBlock Text="{Binding User_Name}" HorizontalAlignment="Center"/>
                                </Border>
                                <Image Source="/VTLAdsProject.View;component/Themes/user.png" Margin="0" Width="100" Height="80"/>
                            </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>

اما بالنسبة لتسجيل الدخول فقد عملت جدول يحتوي ع الاسم وكلمة المرور واسم الواجهه المراد فتحها ولكن تبقى المشكله في كيفية مقارنة البيانات المدخلة مع البيانات الموجودة بالقاعدة .

#4

السلام عليكم ورحمه الله وبركاته

ما عليك الا عمل ربط DataBinging لإسم المستخدم وكلمه المرور, وبعدها سيتم استلام القيم داخل ال ViewModel ومن ثم قومي بعمل الكود اللازم للمقارنه

.:: Wish to become better and better ::.

#5

وعليكم السلام ورحمة الله

شكرا لك ولكن في اكواد المقارنة كيف سيتم تعريف الواجهات المراد فتحها عند مطابقة الاسم وكلمة المرور وهي في طبقة اخرى ؟؟؟

#6

ماذا عن الـ ViewModel، هل طبقت عليه  INotifyPropertyChanged  ، وهل جعلت الخاصية Users من نوع ObservableCollection

هناك مثال بسيط في المرفقات

mvvm-demo.rar

مواضيع مشابهة