Я хотел бы передать ссылку переменной в класс, использовать ее, а затем вытащить ее позже.Как передать ссылку в класс
Что-то вроде этого:
// Create the comment Screen
string newCommentText = "";
commentsScreen = new CommentEntry(this, ref newCommentText);
commentScreen.ShowDialog();
...
_dataLayer.SaveOffComment(newCommentText);
А потом в комментариях класса:
public partial class CommentEntry : Form
{
public CommentEntry(Control pControl, ref string commentResult)
{
InitializeComponent();
control = pControl;
// ***** Need a way for this to store the reference not the value. *****
_commentResult = commentResult;
}
private string _commentResult;
private void CommentEntry_Closing(object sender, CancelEventArgs e)
{
_commentResult = tbCommentText.Text.Trim();
}
}
Есть ли каким-то образом, что newCommentText
может иметь значение, установленное в _commentResult в методе закрытия?
ПРИМЕЧАНИЕ. Ясно, что было бы легко просто установить переменную в моем классе и получить к ней доступ после ShowDialog. Этот пример является лишь приближением моей реальной проблемы и доступ к любым переменным в классе после завершения ShowDialog невозможен.
Вы могли всегда переносите значение в класс. –
Похоже, вы хотите указатель, а не ссылку. –
Почему это невозможно? – Andy