2013-06-19 2 views
-5

я столкнулся с проблемой, я надеюсь, что кто-то может помочь мне :)
я получил TextBox, и я хочу, чтобы ограничить доступ пользователей, так что они не могут писать множественные \ один за другим.
Я использую его для папок. Например: C\temp\test\
Теперь я хочу, чтобы предотвратить вход как: C\temp\test\\\Не допускайте конкретное использование символов

Я попытался искать вокруг этой проблемы, но я не мог найти ничего подобного, так что я надеюсь, что это возможно :)

Я на самом деле не имеют никакого кода, чтобы показать, но вот код для моего TextBox:

private void textBox1_TextChanged(object sender, EventArgs e) 
    { 
     try 
     { 
      Regex regex = new Regex(@"[^C^D^A^E^H^S^T^]"); 
      MatchCollection matches = regex.Matches(textBox1.Text); 
      if (matches.Count > 0) 
      { 
       MessageBox.Show("Character niet toegestaan!"); 
       textBox1.Text = ""; 
      } 

      clsOpslagMedium objOpslag; // definieert type object 
      objOpslag = new clsOpslagMedium(); // creert opject in memory 
      objOpslag.DriveLetterString = textBox1.Text; 
     } 
     catch (Exception variableEx1) 
     { 
      MessageBox.Show("Foutmelding: " + variableEx1.Message); 
     } 
    } 

Я надеюсь, что я предоставил достаточно информации :)

+2

Процедура контроля качества, вероятно, пытается спасти нас от вопроса без кода, чтобы показать первоначальное усилие. –

+0

Возможный дубликат [C# - Проверка текстового поля] (http://stackoverflow.com/questions/6404947/c-sharp-textbox-validation) – nvoigt

+0

OnKeyUp() проверить текст – Jonesopolis

ответ

0

Если текстовое поле содержит \\, недействителен:

if (textBox1.Text.Contains(@"\\")) 
{ 
    MessageBox.Show("Error!"); 
} 
+0

@ X.L.Ant Я почти, *** почти *** отказался от этого ответа за неправильный ответ. 'textBox1.Text.Contains (" \\ ")' всегда будет иметь значение true, когда вы пишете пути в 'textBox1'. Первоначальный ответ был верным. – Nolonar

+0

@Nolonar Вы правы. Сегодня немой. Сожалею. –

+0

Не должно быть 'textBox1.Text.Contains (@" \\ ")' или 'textBox1.Text.Contains (" \\\\ "))'? редактировать; вы исправили его, и я медленный типер. – AutomatedChaos

Смежные вопросы