Hej.
Jag har dragit ihop en server controll som ska göra en liten usercheck. Den ser ut så här
[red]
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
namespace UserLogin
{
/// <summary>
/// Summary description for UserLogin.
/// </summary>
/*[DefaultProperty("Text"),
ToolboxData("<{0}:WebCustomControl1 runat=server></{0}:WebCustomControl1>")]*/
public class UserLogin : System.Web.UI.WebControls.WebControl, System.Web.UI.INamingContainer
{
// Declaration block at class-level
TextBox txtUsername = new TextBox();
TextBox txtPassword = new TextBox();
TextBox txtEmail = new TextBox();
Label lblUsername = new Label();
Label lblPassword = new Label();
Label lblEmail = new Label();
Label lblErrorMessage = new Label();
Button btnSubmit = new Button();
Table table = new Table();
public string UsernameLabel
{
get
{
return lblUsername.Text;
}
set
{
lblUsername.Text = value;
}
}
public string PasswordLabel
{
get
{
return lblPassword.Text;
}
set
{
lblPassword.Text = value;
}
}
public string EmailLabel
{
get
{
return lblEmail.Text;
}
set
{
lblEmail.Text = value;
}
}
public string ButtonLabel
{
get
{
return btnSubmit.Text;
}
set
{
btnSubmit.Text = value;
}
}
private void InitializeControls()
{
// Subcribe to the submit button's Click event
btnSubmit.Click += new EventHandler(btnSubmit_Click);
// Assign default values to the controls that are blank
if (lblUsername.Text == string.Empty)
lblUsername.Text = "Användarnamn: ";
if (lblPassword.Text == string.Empty)
lblPassword.Text = "Lösenord: ";
if (lblEmail.Text == string.Empty)
lblEmail.Text = "E-post: ";
}
private void btnSubmit_Click(object sender, EventArgs e)
{
// Try to insert an entry
lblErrorMessage.Text = "jippie";
/*if (XmlEngine.InsertGuestbookEntry( txtName.Text , txtEmail.Text , txtMessage.Text , listRating.SelectedItem.Text ))
Page.Response.Redirect("Default.aspx"); // If the entry was successfully inserted, reload the page*/
}
protected override void CreateChildControls()
{
// Create the table
TableRow tr = new TableRow();
TableCell td = new TableCell();
// "Usernme" row
td.Controls.Add(lblUsername);
tr.Controls.Add(td);
td = new TableCell();
td.Controls.Add(txtUsername);
tr.Controls.Add(td);
td = new TableCell();
tr.Controls.Add(td);
table.Controls.Add(tr);
// "Password" row
tr = new TableRow();
td = new TableCell();
td.Controls.Add(lblPassword);
tr.Controls.Add(td);
td = new TableCell();
td.Controls.Add(txtPassword);
tr.Controls.Add(td);
table.Controls.Add(tr);
// "Email" row
tr = new TableRow();
td = new TableCell();
td.Controls.Add(lblEmail);
tr.Controls.Add(td);
td = new TableCell();
td.Controls.Add(txtEmail);
tr.Controls.Add(td);
table.Controls.Add(tr);
// Button row
tr = new TableRow();
td = new TableCell();
td.ColumnSpan = 3;
td.Controls.Add(btnSubmit);
tr.Controls.Add(td);
table.Controls.Add(tr);
// Add the table to the control's ControlCollection
Controls.Add(table);
}
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
InitializeControls();
}
/// <summary>
/// Render this control to the output parameter specified.
/// </summary>
/// <param name="output"> The HTML writer to write out to </param>
protected override void Render(HtmlTextWriter writer)
{
// Renders the control's attributes
AddAttributesToRender(writer);
// Render the table
table.RenderControl(writer);
}
}
}
[/red]
Problemet är att jag får
Parser Error Message: File or assembly name ”UserLogin”, or one of its dependencies, was not found.
När jag lägger in controllen på en aspx så här
[red]
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="test.WebForm1" %>
<%@ Register TagPrefix=”NineteenDecember” Namespace=”UserLogin” Assembly=”UserLogin” %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<html>
<head>
<title>WebForm1</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name=vs_defaultClientScript content="JavaScript">
<meta name=vs_targetSchema content="http://schemas.microsoft.com/intellisense/ie5">
</head>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<NineteenDecember:UserLogin runat='server'>
</form>
</body>
</html>
[/red]
UserLogin.cs ligger i samma project.
Vad är fel?
mv icaaq