Si je mets un contrôle dans un fichier .aspx comme ceci; Je reçois un contrôle déclaré dans le fichier .aspx.designer.cs de la page;Modifier les modificateurs d'accès des contrôles ASP.NET
protected global::System.Web.UI.WebControls.TextBox protectedTextBox;
Mais je voudrais changer le modificateur d'accès du contrôle à public
. Y at-il un attribut ou similaire que je peux définir pour modifier le modificateur d'accès?
Voici pourquoi Je veux le faire. J'essaie d'avoir des postbacks inter-pages bien et bien. J'ai deux pages:
FirstPage.aspx
MyTextBox : textbox
MyButton : button, @PostbackUrl=Secondpage
SecondPage.aspx
MyLabel : label
Lorsque l'utilisateur clique FirstPage.MyButton, je veux écrire la valeur de FirstPage.MyTextBox.Text
dans SecondPage.MyLabel.Text
. Je pourrais le faire avec Page.FindControl, mais cela semble être un mauvais substitut à la conversion de la page précédente en objet FirstPage et à une référence directe au contrôle MyTextBox. Quelque chose comme ça;
// on the page_load of SecondPage.aspx;
var previousPage = this.PreviousPage as FirstPage;
this.MyLabel.Text = previousPage.MyTextBox.Text;
Y a-t-il un moyen de changer le modificateur d'accès?
Ceci est uniquement valable pour le projet d'application Web. pour le site Web il n'y a pas de fichier de concepteur. Dans ce cas, la réponse de Steve_Cooper fonctionnera. public TextBox PublicTextBox {get {Renvoie this.MyTextBox; }} – Ozgur