2010-05-23 1 views
1

Я пытаюсь изменить текстовое поле, найденное на сервере. Форма с использованием удаленной связи со стороны клиента. Я попробовал некоторые решения, которые я нашел, но никто из них не работает. удаленного взаимодействия часть работает propperly, единственное, что я не могу понять, это:Как изменить текстовое поле с помощью удаленного доступа

это то, что я есть: со стороны клиент:

... 
private void btn_b1_Click(object sender, EventArgs e) 
{ 
... 
myFunc.update(string s); 
... 
} 
... 

sharedLibs:

public interface myInterf 
{ 
void update(string s); 

} 

сторона сервера:

здесь у меня есть 2 класса в одном и том же пространстве имен

class class1 : MarshalByRefObject, myInterf 
{ 
public void update(string s) 
{ 
//what do i write here to modify textBox1? 
} 
} 
public partial class class2 : Form 
{ 
... 
// here is the textBox i am trying to alter; 
} 

ответ

1

Ваша проблема заключается в поиске экземпляра класса Form. Если это WinForms, вы можете использовать

var myForm = Application.OpenForms["formName"]; 

где FORMNAME это значение Имя свойства формы.

Но обратите внимание:

  • Это какое-то странное, чтобы иметь TextBox (или любой другой интерфейс) на сервере, не говоря уже хотите изменить его от клиента.
  • remoting - старая (устаревшая) технология. Убедитесь, что вы знаете о WCF.
Смежные вопросы