CSHARPWINDOWSFORM Telegram 104
بسم الله الرحمن الرحيم



اليوم سوف نشرح الطريقة الأخرى من انشاء أداة تحكم خاصة بك
الطريقة التي شرحناها سابقاً كانت عنطريق الوراثة
الطريقة هذه ستكون عنطريق User Control
المثال الذي سيتم شرحه لموضوع اليوم

انشاء أداة شريط التقدم Progress Bar مع إضافة ميزة جديدة لهذه الأداة
وهي اظهار النسبة المئوية لشريط التقدم تابع معي .....

قم بانشاء مشروع بعد ان يتم فتح المشروع اذهب الى قائمة project و اختار
Add User Control

في واجهة تصميم User Control قم بإضافة
ProgressBar
Lable
بهذا الشكل:1



قم بإضافة الأدوات
ابدا ProgressBar
وقم بتعديل خصائصها أولا ومن ثم قم بإضافة lable واعمل الخصائص كما في الشكل

بعد ان تتم بإضافة الأدوات وتعديل خصائصهن
اضغط F7 للدخول الى الكود لبدء البرمجة

public int Value
{
get { return Bar.Value; }
set
{
Bar.Value = value;
UpdateLabel();
}
}
Bar هو اسم أداة التحكم ProgressBarالتي اضفناها وغيرنا اسمها الى Bar
نكتب الكود بشكل كامل



public int Value
{
get { return Bar.Value; }
set
{
Bar.Value = value;
UpdateLabel();
}
}
public int Maximum
{
get { return Bar.Maximum; }
set { Bar.Maximum = value; }
}
public int Step
{
get { return Bar.Step; }
set { Bar.Step = value; }
}
public void PerformStep()
{
Bar.PerformStep();
UpdateLabel();
}
private void UpdateLabel()
{
label1.Text = (Math.Round((decimal)(Bar.Value * 100) /
Bar.Maximum)).ToString();
label1.Text += "% Done";
}

توفر أداة التحكم المخصص الوصول الى ثلاث خصائص من أداة التحكم ProgressBar

(القيمة & الحد الأقصى & الخطوة ) ودالة تقوم بتنفيذ الخطوة (النسبة المئوية)

في كل مرة يتغير شريط التقدم (إما عن طريق تعديل الخاصية Value أو استدعاء
الدالة PerformStep ())
تقوم الخاصية او الدالة باستدعاء الدالة UpdateLabel ()
والتي
تغير النسبة المئوية لتعكس التقدم الحالي. هذا يضمن أن lable دائمًا
يظل متزامنًا تمامًا مع شريط التقدم

بعد الانتهاء من برمجة الأداة
اضغط Ctrl+Shift+B
لكي يتم بناء المشروع واضافة الأداة الجديدة الى ToolBox

الان ارجع الى واجهة التصميم Form1 واضف الأداة الخاصه بك من ToolBox

واضف هذه الأداة الى الفورم timer
قم بتعديل خصائص timer
Enabled = true
Interval = 1000

افتح حدث Tick للاداة Timer

واكتب الكود التالي

private void timer1_Tick(object sender, EventArgs e)
{
userControl11.PerformStep();
if (userControl11.Maximum == userControl11.Value)
{
timer1.Stop();
}
}


Run
👍1



tgoop.com/CsharpWindowsForm/104
Create:
Last Update:

بسم الله الرحمن الرحيم



اليوم سوف نشرح الطريقة الأخرى من انشاء أداة تحكم خاصة بك
الطريقة التي شرحناها سابقاً كانت عنطريق الوراثة
الطريقة هذه ستكون عنطريق User Control
المثال الذي سيتم شرحه لموضوع اليوم

انشاء أداة شريط التقدم Progress Bar مع إضافة ميزة جديدة لهذه الأداة
وهي اظهار النسبة المئوية لشريط التقدم تابع معي .....

قم بانشاء مشروع بعد ان يتم فتح المشروع اذهب الى قائمة project و اختار
Add User Control

في واجهة تصميم User Control قم بإضافة
ProgressBar
Lable
بهذا الشكل:1



قم بإضافة الأدوات
ابدا ProgressBar
وقم بتعديل خصائصها أولا ومن ثم قم بإضافة lable واعمل الخصائص كما في الشكل

بعد ان تتم بإضافة الأدوات وتعديل خصائصهن
اضغط F7 للدخول الى الكود لبدء البرمجة

public int Value
{
get { return Bar.Value; }
set
{
Bar.Value = value;
UpdateLabel();
}
}
Bar هو اسم أداة التحكم ProgressBarالتي اضفناها وغيرنا اسمها الى Bar
نكتب الكود بشكل كامل



public int Value
{
get { return Bar.Value; }
set
{
Bar.Value = value;
UpdateLabel();
}
}
public int Maximum
{
get { return Bar.Maximum; }
set { Bar.Maximum = value; }
}
public int Step
{
get { return Bar.Step; }
set { Bar.Step = value; }
}
public void PerformStep()
{
Bar.PerformStep();
UpdateLabel();
}
private void UpdateLabel()
{
label1.Text = (Math.Round((decimal)(Bar.Value * 100) /
Bar.Maximum)).ToString();
label1.Text += "% Done";
}

توفر أداة التحكم المخصص الوصول الى ثلاث خصائص من أداة التحكم ProgressBar

(القيمة & الحد الأقصى & الخطوة ) ودالة تقوم بتنفيذ الخطوة (النسبة المئوية)

في كل مرة يتغير شريط التقدم (إما عن طريق تعديل الخاصية Value أو استدعاء
الدالة PerformStep ())
تقوم الخاصية او الدالة باستدعاء الدالة UpdateLabel ()
والتي
تغير النسبة المئوية لتعكس التقدم الحالي. هذا يضمن أن lable دائمًا
يظل متزامنًا تمامًا مع شريط التقدم

بعد الانتهاء من برمجة الأداة
اضغط Ctrl+Shift+B
لكي يتم بناء المشروع واضافة الأداة الجديدة الى ToolBox

الان ارجع الى واجهة التصميم Form1 واضف الأداة الخاصه بك من ToolBox

واضف هذه الأداة الى الفورم timer
قم بتعديل خصائص timer
Enabled = true
Interval = 1000

افتح حدث Tick للاداة Timer

واكتب الكود التالي

private void timer1_Tick(object sender, EventArgs e)
{
userControl11.PerformStep();
if (userControl11.Maximum == userControl11.Value)
{
timer1.Stop();
}
}


Run

BY برمجة تطبيقات الويندوز C# Programming


Share with your friend now:
tgoop.com/CsharpWindowsForm/104

View MORE
Open in Telegram


Telegram News

Date: |

Add the logo from your device. Adjust the visible area of your image. Congratulations! Now your Telegram channel has a face Click “Save”.! How to create a business channel on Telegram? (Tutorial) End-to-end encryption is an important feature in messaging, as it's the first step in protecting users from surveillance. The administrator of a telegram group, "Suck Channel," was sentenced to six years and six months in prison for seven counts of incitement yesterday. The best encrypted messaging apps
from us


Telegram برمجة تطبيقات الويندوز C# Programming
FROM American