Получить значение TextBox из другого класса - PullRequest
1 голос
/ 10 марта 2011

У меня есть класс C #, из которого я хотел бы получить доступ к строке, содержащейся в TextBox.TextBox определяется в файле .ascx.Какие заголовки я должен указать в классе, чтобы иметь доступ к этой строке TextBox?Небольшой пример был бы очень признателен, так как я новичок в ASP.NET.Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 10 марта 2011

Предполагается ли, что этот класс является "выделенным кодом" для файла .ascx, или это его собственный класс?

Если первый, как вы его строите?По сути, файл .ascx должен «наследовать» от этого класса в своем заголовке, а сам класс должен расширяться UserControl.Здесь есть примеры и информация .

Если последнее, класс не должен иметь доступ к элементам страницы в пользовательском элементе управления.Что делает класс?По сути, любые значения, которые нужны классу, должны быть переданы ему либо в качестве аргументов конструктора при построении экземпляра класса, либо в качестве свойств, установленных в классе, либо в качестве аргументов метода при вызове методов класса.

МожетВы делитесь кодом и описываете функционал, которого хотите достичь?

0 голосов
/ 10 марта 2011

Предполагая, что MyUserControl.ascx наследует MyUserControl.cs, вы можете определить открытое свойство, которое представляет значение вашего элемента управления TextBox.Например:

public class MyUserControl : System.Web.UI.UserControl {
  public string MyTextBoxValue()
  {
    get 
    {
      return MyTextBoxControl.Text;
    }
  }
}

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

string value = myUserControl.MyTextBoxValue();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...