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

نسخة كاملة : تكست بوكس يقبل نص اي لغة فقط
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله
اريد تكست بوكس ستأستخدمه لادخال اسم المستخدم
اريده ان يكتب اسمه باي لغة يحب وعلي اي شكل يريد ولاكن بشرط عدم السماح بالرموز ما عدا ثلاث رموز فقط وهما (. و - و _ )
وجزاكم الله خيرا
PHP كود :
Private Sub TextBox1_KeyPress(ByVal sender As ObjectByVal e As System.Windows.Forms.KeyPressEventArgsHandles TextBox1.KeyPress 
        
        Dim _allowedCharacters 
As String = (". و - و _"
        If 
_allowedCharacters.Contains(e.KeyCharAndAlso e.KeyChar <> ChrW(Keys.BackThen 
            e
.Handled True 
        End 
If 

    
End Sub 
السلام عليكم اخي مالك
جزاك الله خيرا
وجدت هذا ايضا مفيد جدا
بس الامر كان ملتبس عليه في موضوع اللغات هههه كنت اظن ان هناك فرق من لغة الي اخري
يوجد البنية Char وهو من الفضاء System ويحتوي على دوال كثيرة منها (لمزيد من المعلومات Char Structure)
كود :
Char.IsControl(c)
Char.IsDigit(c)
Char.IsLetter(c)
Char.IsLetterOrDigit(c)
Char.IsNumber(c)
Char.IsSymbol(c)

وبناء على طلبك هذا مثال (الأحرف بأي لغة والمسافة والرموز المحددة وبدون أرقام)
(لإضافة الأرقام استبدل Char.IsLetterOrDigit بـ Char.IsLetter)
كود :
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
    If Char.IsControl(e.KeyChar) _
    Or Char.IsLetter(e.KeyChar) _
    Or Char.IsWhiteSpace(e.KeyChar) _
    Or InStr(".-_", e.KeyChar) _
    Then
        Return
    Else
        e.Handled = True
    End If
End Sub
طيب ما رايك بالفلترة باستخدم Regularexpression
تكتب عدة دوال لكل معيار وتنسيق ...اشجعك على استخدامها.
(23-04-14, 02:01 AM)سعود كتب : [ -> ]طيب ما رايك بالفلترة باستخدم Regularexpression
تكتب عدة دوال لكل معيار وتنسيق ...اشجعك على استخدامها.

استخدام Regular Expressions مع أحرف Unocide لها طريقة خاصة تستلزم تحديد اللغة التي تريد التعامل معها (لمزيد من المعلومات Unicode Regular Expressions) في حين أن System.Char تتعامل مع الحرف من خلال تصنيفه داخل الخط Font، هذا بالإضافة إلى أنه ليس كل مبرمج Visual Basic يتقن استخدام Regular Expressions.
جزاكم الله خيرا اخي سعود واخي الحبيب vbnet
بالفعل انا استخدم Char في اشياء كثيرة
ولاكني ما كنت اعرف

إقتباس :أن System.Char تتعامل مع الحرف من خلال تصنيفه داخل الخط Font

ولذلك فرحت جدا عندما جربتها علي اكثر من لغة