Ich bekomme diese Anfragen für 'machen Sie mich ein Werkzeug, xyz' für eine web app wir setzen auf.Wie greifen Sie über die Seite asp: contents mit dem Master auf Benutzersteuerelemente auf einer Masterpage zu?
Also nach dem dritten, realisierte ich, dass es einfacher wäre, sie alle zusammen zu vereinigen und eine Masterseite zu verwenden.
Ich habe eine Benutzersteuerung namens MessageCenter, die ich für Fehler, Erfolg und informative Nachrichten verwende, und so habe ich das auf der Masterseite fallengelassen.
<%@ Master Language="VB" CodeFile="tfMasterPage.master.vb" Inherits="tfMasterPage" %>
<%@ Register Src="MessageCenter/msgCenter.ascx" TagName="msgCenter" TagPrefix="uc1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>INSERT TITLE HERE</title>
<link href="Stylesheets/EogTool.css" rel="stylesheet" type="text/css" />
<link href="stylesheets/TF_Main_Styles.css" rel="stylesheet" type="text/css" />
<link href="stylesheets/TF_Print_Styles.css" rel="stylesheet" type="text/css" media="print" />
</head>
<body style="background-color: #eeeeee">
<form id="form1" runat="server">
<div class="page">
<div class="headerArea">
<div class="LogoImg">
<img alt="Transparency Florida" src="images/TF_Logo.jpg" /></div>
<div class="SealImg">
<img alt="Shining the Light on Florida's Budget" src="images/TF_Seal.jpg" /></div>
</div>
<div class="content">
<h1>
FIS - EOG Table Maintenance</h1>
</div>
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div class="content">
<div>
<uc1:msgCenter ID="MsgCenter1" runat="server" />
</div>
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
...
Normalerweise, wenn die msgcenter auf einer regelmäßigen aspx Seite ist, nenne ich seine Methode und Sachen aus dem Code-Behind wie in diesem sub:
...
rtn = dal.deleteRow(CInt(e.CommandArgument), currentTab())
If Not IsNumeric(rtn) Then
MsgCenter1.addMessage("An Error occured deletion" & rtn, , , , "E")
Else
MsgCenter1.addMessage("Delete Successful", , , , "S")
End If
bindGrid()
MsgCenter1.Visible = True
End Sub
Aber wenn ich versuche, dies von der Asp: Inhalt Sache auf der Seite mit der Masterpage zu tun, sagt es mir, dass msgCenter1 nicht deklariert ist. Es ist eine Art Problembereich.
Ich habe über die Verwendung lesen Findcontrol wie
ctype(master.findcontrol("tbWhatever"), textbox).text = "FOO"
Aber wenn ich versuche, meine Benutzerkontrolle zu werfen, klagt sie, weil sie wieder einmal nicht deklariert ist.
Ich fühle mich, als ob ich gerade ein Stück des Puzzles vermisse, aber es ist mir seit ungefähr 4 PM gestern entgangen.
Alle Ratschläge, Hinweise oder Links würden am meisten geschätzt werden.
Danke.
Sehr gut erklärt. – AmitK
Ist Ihre Methode als öffentlich markiert? – cptScarlet
Ich annulliere das! Meine Installation von VS leidet dll verrotten und sich seltsam benehmen. Es funktioniert! Du schaukelst! Vielen Dank!!!!!! – aape