Creating Custom Parameter Objects
File: UsernameParameter.cs
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace MyControls
{
public class UsernameParameter : Parameter
{
protected override object Evaluate(HttpContext context, Control control)
{
if (context != null)
return context.User.Identity.Name;
else
return null;
}
}
}
File: Default.aspx
<%@ Page Language="C#" %>
<%@ Register TagPrefix="custom" Namespace="MyControls" %>
<!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>Show Username Parameter</title>
</head>
<body>
<form id="form1" runat="server">
<asp:FormView
id="frmGuestbook"
DataSourceID="srcGuestbook"
DefaultMode="Insert"
Runat="server">
<InsertItemTemplate>
<asp:Label
ID="lblComment"
Text="Comment:"
AssociatedControlID="txtComment"
Runat="server" />
<asp:TextBox
id="txtComment"
Text='<%# Bind("comment") %>'
TextMode="MultiLine"
Columns="50"
Rows="4"
Runat="server" />
<asp:Button
id="btnInsert"
Text="Add Entry"
CommandName="Insert"
Runat="server" />
</InsertItemTemplate>
</asp:FormView>
<asp:GridView
id="grdGuestbook"
DataSourceID="srcGuestbook"
CssClass="guestbook"
Runat="server" />
<asp:ObjectDataSource
id="srcGuestbook"
TypeName="YourDataSource"
SelectMethod="Getter"
Runat="server">
<InsertParameters>
<custom:UsernameParameter name="username" />
</InsertParameters>
</asp:ObjectDataSource>
</form>
</body>
</html>
Related examples in the same category