User Controls For Input (Circular Pipe Calculator Example)
Prerequisites
This example does use code at Topic – Creating a Single Table Database Object Storage and also is part of Topic – User Controls
Summary
This is part of the SMADA Project and uses Code from Topic – Creating a Single Table Database Object Storage. It demonstrates creating a user control for input for a Circular Pipe Calculator and using that User Control.
Topics Covered in this Video;
-Creating User Control
-Validators
-Circular Pipes
-Property Accessors
-Implementing User Controls
-src
-TagPrefix and TagName
-Domain Object
Video
Reference Materials
ucEditCircularPipe.ascx
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ucEditCircularPipe.ascx.cs" Inherits="SMADA2013.UserControls.ucEditCircularPipe" %>
<table>
<tr>
<td><asp:Label ID="lblDiameter" runat="server" Text="Diameter (inches) *"></asp:Label></td>
<td><asp:TextBox ID="tbDiameter" runat="server" TextMode="Number" Width="60"></asp:TextBox></td>
</tr>
<tr>
<td> <asp:Label ID="lblManningsN" runat="server" Text="Manning's N *"></asp:Label></td>
<td><asp:TextBox ID="tbManningsN" runat="server" TextMode="Number" Width="60"></asp:TextBox></td>
</tr>
<tr>
<td><asp:Label ID="lblSlope" runat="server" Text="Slope (fraction) *"></asp:Label> </td>
<td><asp:TextBox ID="tbSlope" runat="server" TextMode="Number" Width="60"></asp:TextBox></td>
</tr>
<tr>
<td><asp:Label ID="lblFlow" runat="server" Text="Flow (cfs)"></asp:Label> </td>
<td><asp:TextBox ID="tbFlow" runat="server" TextMode="Number" Width="60"></asp:TextBox></td>
</tr>
<tr>
<td><asp:Label ID="lblDepth" runat="server" Text="Depth (ft)"></asp:Label> </td>
<td><asp:TextBox ID="tbDepth" runat="server" TextMode="Number" Width="60" ></asp:TextBox></td>
</tr>
<tr>
<td>
* - Required field<br />
Must enter <b>Flow</b> or <b>Depth</b><br />
</td>
<td></td>
</tr>
</table>
ucEditCircularPipe.ascx.cs
using System;
namespace SMADA2013.UserControls
{
public partial class ucEditCircularPipe : System.Web.UI.UserControl
{
public double Diameter {
get {
try
{
return Convert.ToDouble(tbDiameter.Text);
}
catch
{
return 0;
}
}
set { tbDiameter.Text = Convert.ToString(value); }
}
public double ManningsN
{
get
{
try
{
return Convert.ToDouble(tbManningsN.Text);
}
catch
{
return 0;
}
}
set { tbManningsN.Text = Convert.ToString(value); }
}
public double Slope
{
get
{
try
{
return Convert.ToDouble(tbSlope.Text);
}
catch
{
return 0;
}
}
set { tbSlope.Text = Convert.ToString(value); }
}
public double Flow
{
get
{
try
{
return Convert.ToDouble(tbFlow.Text);
}
catch
{
return 0;
}
}
set { tbFlow.Text = Convert.ToString(value); }
}
public double Depth
{
get
{
try
{
return Convert.ToDouble(tbDepth.Text);
}
catch
{
return 0;
}
}
set { tbDepth.Text = Convert.ToString(value); }
}
protected void Page_Load(object sender, EventArgs e)
{
}
}
}