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

احتاج كود لtextbox يمنع إدخال الحروف و'

مغلق
بدأه إبراهيم دويكات في 20 ديسمبر 2005 · 7 رد · 783 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

لدي textbox يأخذ أرقاما ويخزنها في قاعدة البيانات لكن المشكلة عند إدخال شيء غير الأرقام......

ومشكلة أخرى هي عند ادخال هذه الاشارة

'

والتي تسمى single qoute

تعمل مباشرة exception عند دخولها في query

أرجوا منكم كودا بسيطا يمنع إدخال هذه الاشياء ويسمح بدخول الارقام (يعمل كماسك)

يعني عندما يدخل أرقام يظهر وعندما يدخل حرف لا يظهر من أصله............ :o

My_Sign.jpg
#2

عذرا

وجدت الحل لمشكلة الحروف

الملف في المرفقات

Allow/Disallow negative input.

Specify the maximum precision and scale.

Specify a different scale when the control hasn't got the focus.

Allow/Disallow zero as a valid input.

The control displays grouping characters.

The control adapts the regional settings (grouping char, decimal char).

لكن بقي مشكلة '

single qoute

Shorty.Windows.Forms.zip

My_Sign.jpg
#3

الsingle quote حلها بسيط قم بعمل Replace لكل single quote ب 2 signle quotes متتابعتين

' ---> ''

الحل الأسهل استخدم Stored Procedures

Sr. Software Development Engineer
Hulu, LLC
My Blogs

#4

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

أخي الكريم لعمل ماسك لصندوق النصوص على سبيل المثال لإنشاء صندوق نص لا يقبل إلا أرقام وإشارة الناقص ما عليك سوى أن تقوم بالخطوات التالية:

     
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            const string MaskPatterns = "-0123456789"; // هنا نستطيع أن نضع الماسك الذي نريده

             //نقوم بختبار الحرف الذي تم إدخاله من قبل المستخدم فإذا لم يوجد نقوم بإلغاء عملية الإدخال على النحو التالي
            if(!MaskPatterns.Contains(new string(e.KeyChar,1)))
            {
                e.Handled = true;
            }
        }

أتمنى لكم التوفيق

لا تفعل إلا ما تستطيع أن تقوله ولا تقول إلا ما تسطيع أن تفعله

اللهم علمنا ما ينفعنا ونفعنا بما علمتنا وهب لنا من لدنك ولياً مرشدا

كلما أدبني الدهر أراني نقص عقلي ... وإذا ما زدت علماً زادني علماً بجهلي

أخوكم في الله أبو المجد

هيا نتعلم بعض المبادء لنطرق باب الإحتراف ************** جديد الدروس ( Application Domains and Assemblies)

التوقيت في دمشق:

<embed src="http://www.clocklink.com/clocks/0006-Gray.swf?TimeZone=R1T" width="200" height="240" wmode="transparent" type="application/x-shockwave-flash">

#5

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

جزاك الله خيرا اخونا طارق ولكن كملجوظة ياشباب أخونا طارق الكود بتاعه ب 2005 لذلك لو جربته علي 2003 هيدي ايرور

لان ال String في 2003 لا تحتوي contains

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

const string MaskPatterns = "-0123456789"; // هنا نستطيع أن نضع الماسك الذي نريده

 	 //نقوم بختبار الحرف الذي تم إدخاله من قبل المستخدم فإذا لم يوجد نقوم بإلغاء عملية الإدخال على النحو التالي
 	 if(MaskPatterns.IndexOf(new string(e.KeyChar,1))<0)
 	 {
    e.Handled = true;
 	 }
#6

بوركتم وبوركت جهودكم الجبارة..............سأجرب هذه الطرق إن شاء الله

طبعا عندي 2003

لكم كل الشكر والاحترام.........

My_Sign.jpg
#7

عفوا

e.KeyChar

غير موجودة في 2003

My_Sign.jpg
#8

e.KeyChar موجودة بال 2003

يبدو أنك استخدمت textBox1_KeyDown

يجب ان تستخدم textBox1_KeyPress

ولكن مشكلة هذا الكود ==> لا يمكن استخدام Backspace

تم تعديل هذه المشاركة بواسطة baha_ashour في 24 ديسمبر 2005 في 23:02

هذا الموضوع مغلق.

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