Kan godt se logikken, men det giver stadig fejl.! Forstår det simpelthen ikke.
WebUserControl giver følgende fejl:
Handles clause requieres a WithEvents variable defined in the containing type or one af its base type
i
Private Sub myEventHandle(ByVal logoUrl As String) Handles WebUserControl1.myEvent
Label1.Text = logoUrl.ToString
End Sub
og
myEvent giver følgende fejl:
"myEvent " is not an event of "WebUserControl"
i
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
RaiseEvent myEvent("Det virker")
End Sub
Her er hele koden:
aspx:
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<%@ Register Src="WebUserControl.ascx" TagName="WebUserControl" TagPrefix="uc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="
http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Style="z-index: 100; left: 135px; position: absolute;
top: 45px" Text="Label"></asp:Label>
<uc1:WebUserControl ID="WebUserControl1" runat="server" />
</div>
</form>
</body>
</html>
CodeBehind:
Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
End Sub
Private Sub myEventHandle(ByVal logoUrl As String) Handles WebUserControl1.myEvent
Label1.Text = logoUrl.ToString
End Sub
End Class
WebUserControl:
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="WebUserControl.ascx.vb" Inherits="WebUserControl" %>
<asp:Button ID="Button1" runat="server" Height="23px" Style="z-index: 100; left: 210px;
position: absolute; top: 118px" Text="Button" Width="59px" />
<asp:TextBox ID="TextBox1" runat="server" style="z-index: 102; left: 132px; position: absolute; top: 69px"></asp:TextBox>
og Codebehind
Partial Class WebUserControl
Inherits System.Web.UI.UserControl
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
RaiseEvent myEvent("Det virker")
End Sub
End Class