Capture.PNG
پیش نیاز های این آموزش :
1- آشنایی با تکنولوژی Entity Framework
2- آشنایی با یوزر کنترل ها
3- sql Server
بنام خدا :
از امروز شروع به آموزش پروژه دفترچه تلفن با wpf میکنم تا یک آموزش خوب برای شروع کار با wpf در اختیار دوستان باشد
مباحث این آموزش عبارتند از :
1- کار با کنترل های دربرگیرنده (grid- stack panel- wrap panel)
2-کار با تکس باکس ها لیبل ها دکمه ها کمبو باکس ها لیس باکس ها و سایر کنترل ها از این غبیل
3- کار با استیل ها و تغییر استایل دکمه ها
4- کار با دیتاگرید ویو و مباحث دیتا بایندینگ
5- تعریف یک یوزر کنترل ساده و استفاده از ان
خوب ابتدا از هر چیزی به یک بانک اطلاعاتی تحت Sql نیاز داریم
پس ابدا وارد محیط sql Server managment studio بشین و یک new qeuery باز کنین
و دستورات زیر رو اجرا کنین تا بانک اطلاعاتیمون ایجاد بشه
CREATE DATABASE [PhoneBook]
Go
USE [PhoneBook]
GO
CREATE TABLE [Groups]
(
[ID][INT]NOT NULL IDENTITY,
[GName][NVARCHAR](50) NOT NULL,
[GLevel][TINYINT]NOT NULL,
PRIMARY KEY(ID)
)
GO
CREATE TABLE [Phones]
(
[ID][INT]NOT NULL IDENTITY,
[CID][INT]NOT NULL,
[Phone][VARCHAR](15)NOT NULL,
PRIMARY KEY(ID)
)
GO
CREATE TABLE [Contacts]
(
[ID][INT]NOT NULL IDENTITY,
[FName][NVARCHAR](50) NOT NULL,
[LName][NVARCHAR](50) NOT NULL,
[NICName][NVARCHAR](50),
[EMail][VARCHAR](50),
[Address][NVARCHAR](100),
[GID][INT]NOT NULL,
[Job][NVARCHAR](50),
[Pic][VARBINARY](MAX),
PRIMARY KEY(ID)
)
GO
ALTER TABLE [Contacts]
ADD CONSTRAINT [FK_Contracts_Groups]
FOREIGN KEY([GID])
REFERENCES [Groups]([ID])
ON UPDATE CASCADE
GO
ALTER TABLE [Phones]
ADD CONSTRAINT [FK_Phones_Contacts]
FOREIGN KEY([CID])
REFERENCES [Contacts]([ID])
ON UPDATE CASCADE
ON DELETE CASCADE
GO
ALTER TABLE [Contacts]
ADD [Date][DATE]
GO
خوب حالا که بانک اطلاعاتی ما ایجاد شد ابتدا یک پروژه wpf ایجاد کنیم و بعدش ابتدا به نحوه ی تعرف کنترل ها و مکان دهی اون ها و همچنین سایر مسائل بپردازیم
پس وارد محیط ویژوال استادیو بشین و از مسیر زیر یک پروژه جدید رو ایجاد کنید و نام WpfPhoneBook رو برای اون انتخاب کنین
File ->New->Project->Visual C#->Wpf Application
زمانی که پروژ رو ایجاد کردین وارد محیط زیر خواهید شد
Untitled.jpg
اگر به پنجره Solution Exploler دقت بکنین متوجه دو چیز جدید خواهید شد
App.xaml
MainWindow.xaml
Capture.PNG
ابتدا به تحلیل فایل App.xaml میپردازیم پس از پنجره ی Solution Exploler بروی فایل App.xaml دوبار کلیک میکنیم تا محتویات فایل نمایش داده بشه
Capture.PNG
اگه بخوام wpf رو با ویندوز فرم مقایسه کنم میتونم بگم فایل App.xaml درواقع کاری شبیه به Program.cs رو انجام مید و نقطه شروع برنام رو مدیری میکنه
خط اول مربوط به مشخص ساختن فضای نامی ای است که فایل App.xaml باید بروی آن کار کند
Capture.PNG
سه خط بعدی هرکدام مربوط به فراخوانی name space های مورد نیاز است دواقع همانند همکرد using در کد سی شارپ میباشد
در واقع برای تتعریف فضای نام مورد نیاز خودتون در فایل xmal شما باید از xmlns استفاده کنید به طور مثال
xmlns="clr-namespace:[NameSpace Name];assembly=[Assembly Name]"
Capture.PNG
اما مشخصه ی startupuri که مشخص کننده ی پنجره ای است که در هنگا اغاز کار برنامه باید نمایش داده شود و نقطه شروه برنامه باشد
Capture.PNG