منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
كيفية جعل الحقل TestBox يكتب عربي او انجليزي فقط
اجبت عن هذا السؤال منذ دقائق على موضوع اخر

استخدم حدث TextChanged و Regex.Replace لاستبدال اي شيء ليس بحرف عربي او انجليزي او مسافة بنص فارغ

كود :
    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        Dim Txt As TextBox = sender
        Txt.Text = Regex.Replace(Txt.Text, "[^\u0621-\u064Aa-zA-Z\s]", "")
    End Sub


لا تنس 
كود :
Imports System.Text.RegularExpressions

المدي [^\u0621-\u064Aa-zA-Z\s] يمثل اي شيء لبس بحرف عربي ( في الامر تفصيل ) وكذلك ليس بحرف انجليزي ولا حرف مسافة ( مسافة عادية او TAB او سطر جديد )
(08-11-21, 03:47 PM)Anas Mahmoud كتب : [ -> ]اجبت عن هذا السؤال منذ دقائق على موضوع اخر

استخدم حدث TextChanged و Regex.Replace لاستبدال اي شيء ليس بحرف عربي او انجليزي او مسافة بنص فارغ

كود :
    Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
        Dim Txt As TextBox = sender
        Txt.Text = Regex.Replace(Txt.Text, "[^\u0621-\u064Aa-zA-Z\s]", "")
    End Sub


لا تنس 
كود :
Imports System.Text.RegularExpressions

المدي [^\u0621-\u064Aa-zA-Z\s] يمثل اي شيء لبس بحرف عربي ( في الامر تفصيل ) وكذلك ليس بحرف انجليزي ولا حرف مسافة ( مسافة عادية او TAB او سطر جديد )

تسلم اخي ولكن اذا جاء شخص لمسح حرف لا يستطيع اريد اضافتها واريد عند كتابة رقم يظهر له رساله بكتابة حروف فقط
أضف حدث KeyPress

كود :
   Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       e.Handled = Regex.IsMatch(e.KeyChar, "[^\u0621-\u064Aa-zA-Z\s\u0000-\u001f]")
   End Sub

هل تريد ان تمنع المستخدم من مسح ماكتبه ؟
(08-11-21, 04:14 PM)Anas Mahmoud كتب : [ -> ]أضف حدث KeyPress

كود :
   Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       e.Handled = Regex.IsMatch(e.KeyChar, "[^\u0621-\u064Aa-zA-Z\s\u0000-\u001f]")
   End Sub

هل تريد ان تمنع المستخدم من مسح ماكتبه ؟

اريد اذا كتب حرف خطاء ويريد يمسحه Backspace
طيب عدل الحدث الى مايلي

كود :
   Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress
       If Regex.IsMatch(e.KeyChar, "[^\u0621-\u064Aa-zA-Z\s\u0000-\u001f]") Then
           e.Handled = True
           MsgBox("الاحرف فقط مسموحة")
       End If

   End Sub
تسلم حبيبي اشتغل معي الف شكرا