2016-04-08 6 views
0

Я хочу знать, возможно ли это/как вы показываете всплывающее окно, в котором вы можете ввести значение и использовать его в приложении C# forms (visual studio). Вероятно, уже есть путеводители об этом, но я не смог узнать, поскольку я, скорее всего, не знаю правильного термина, используемого для него.C# как показать поле значения на кнопке

В принципе мне нужен ящик, чтобы показать, где вы вводите номер, и использовать его в другом месте.

""»

EVENT :: Нажмите кнопку -> открыть всплывающее окно -> введите значение -> введите -.> Потребительскую стоимость где-то еще

"" "" Не уверен, если это возможно, или вы должны использовать новую страницу формы.

Спасибо за ваши ответы.

+1

Вопрос уже задан [здесь] (http://stackoverflow.com/questions/10797774/messagebox-with-input-field) –

ответ

0

Ну, есть API называется TaskDialog, это выглядит как окно сообщения, но вы можете добавить компонент в его, Example

Но будет лучше, если вы создадите свою собственную форму, потому что у вас будет больше возможностей и меньше кода для написания, , если вы создадите свою собственную форму, вы можете добавить публичную собственность, после чего вы вызываете свою форму с помощью функции ShowDialog и получить значение в конце.

using(FormDialog fr= new FormDialog()) 
{ 
    if(fr.ShowDialog()==System.Windows.Forms.DialogResult.OK) 
    { 
    //get your property 
    } 
} 

на форме (FromDialog) вы должны использовать this.DialogResult=System.Windows.Forms.DialogResult.OK; вместо this.close() или Dispose(); , то вы можете использовать событие, чтобы управлять, если вы хотите проверить с помощью ввода, скорее всего:

private void FormDialog_KeyDown(object sender, KeyEventArgs e) 
     { 
      if (e.KeyCode==Keys.Enter) 
      { 
       //set your property 
       this.DialogResult=System.Windows.Forms.DialogResult.OK; 
      } 
     } 
0

Вы создаете форму (Myform), который наследуется от формы и выставляет нужные вам данные (FirstName, LastName) на ввод. Когда вы нажимаете кнопку, появляется форма.

public void eventClick(....) 
{ 
    MyForm f = new MyForm(); 
    f.Closed + = ClosedHandler; 
    f.Show(); 
} 

В MyForm вы вводите данные и заполняете данные как общедоступную переменную MyForm. Поскольку основная форма подписывается на событие Закрытие, он вызывает обработчик событий и получает данные от него.

public void ClosedHandler(....) 
{ 
    MyForm f = sender as MyForm 
    if(f!=null) 
    { 
     Person p = new Person() 
     { 
      FirstName = f.FirstName; 
      LastName = f.LastName; 
     }; 
    } 

} 

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

  • Нет связанных вопросов^_^