<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6844089548325201736</id><updated>2024-10-04T22:35:01.439-07:00</updated><category term="Asp.Net"/><category term="Validating ASP.NET Server Controls"/><category term="ASP:Image"/><category term="Android"/><category term="CheckBox"/><category term="DataSet Object in ADO.Net 2.0"/><category term="Detailsview Control"/><category term="DropDownList"/><category term="How to Upload an Image Using ASP.NET"/><category term="NET LinkButton"/><category term="SQL Server 2008"/><category term="Standard ASP.NET Web Server Controls"/><category term="Upload picture"/><category term="Uploading images via .NET"/><category term="Using TemplateFields in the GridView Control"/><category term="Validate uploaded image content in ASP.NET"/><category term="resize and save in SQL database"/><title type='text'>ASP DOT NET</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>22</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-5026251251838646735</id><published>2020-05-16T07:41:00.003-07:00</published><updated>2020-05-16T07:41:44.366-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><title type='text'>Coding a Snake Game for Android</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;&lt;br /&gt;This game will use a different engine to the other games on this site as it will make a pre-determined number of “moves” each second, rather than playing as many frames of animation as possible and then timing each frame for maximum smoothness. The reason for this is we can recreate a authentic blocky/jumpy animation.&lt;br /&gt;One dot for the snake and one dot for Bob waiting to be eaten. Before anyone complains that snakes don’t eat Bobs, they don’t eat apples either. As the game continues and many Bobs are eaten the snake grows in length making it more likely that the player will trap or eat himself.&lt;br /&gt;&lt;br /&gt;Let’s start coding.&lt;br /&gt;Coding the Snake Activity&lt;br /&gt;&lt;br /&gt;As usual, we will start with an Activity which will control a thread in a class which controls the game and handles input from the player. If you want a more in-depth discussion of the interaction between the Activity and the main class then take a look at the Breakout tutorial.&lt;br /&gt;&lt;br /&gt;Create a new project in Android Studio, use the Empty Activity template, and call it Snake. Leave the rest of the settings at their defaults. Call the Activity SnakeActivity and amend its code to be the same as this.&lt;br /&gt;One dot for the snake and one dot for Bob waiting to be eaten. Before anyone complains that snakes don’t eat Bobs, they don’t eat apples either. As the game continues and many Bobs are eaten the snake grows in length making it more likely that the player will trap or eat himself.&lt;br /&gt;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.graphics.Point;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;import android.view.Display;&lt;br /&gt;&lt;br /&gt;public class SnakeActivity extends Activity {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Declare an instance of SnakeEngine&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // We will code this soon&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SnakeEngine snakeEngine;&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Here we declare an instance of SnakeEngine called snakeEngine which doesn’t exist yet but it will soon. Now code the onCreate method of the SnakeActivity class to initialize the SnakeEngine object. Obviously there will be errors in our code but if we code SnakeActivity in full we won’t need to keep coming back to it. Add the following code and we will discuss it.&lt;br /&gt;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.graphics.Point;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;import android.view.Display;&lt;br /&gt;&lt;br /&gt;public class SnakeActivity extends Activity {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Declare an instance of SnakeEngine&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SnakeEngine snakeEngine;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected void onCreate(Bundle savedInstanceState) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; super.onCreate(savedInstanceState);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get the pixel dimensions of the screen&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Display display = getWindowManager().getDefaultDisplay();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Initialize the result into a Point object&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Point size = new Point();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; display.getSize(size);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a new instance of the SnakeEngine class&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeEngine = new SnakeEngine(this, size);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Make snakeEngine the view of the Activity&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setContentView(snakeEngine);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;The onCreate method uses the Display class and an object of type Point to get the resolution of the device the game is running on. Our SnakeEngine class will need a reference to the Activity and the resolution so we pass them in to the SnakeEngine constructor. The last thing we do is use snakeEngine to be the View of the SnakeActivity.&lt;br /&gt;Now we can code the onPause and onResume methods. Add the following code. Again. for a full explanation read the Breakout tutorial but basically Android will call these onPause and onResume methods then these methods call the relevant methods inside SnakeEngine to start and stop the thread which handles the entire game.&lt;br /&gt;&lt;br /&gt;// Start the thread in snakeEngine&lt;br /&gt;@Override&lt;br /&gt;protected void onResume() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; super.onResume();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeEngine.resume();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;// Stop the thread in snakeEngine&lt;br /&gt;@Override&lt;br /&gt;protected void onPause() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; super.onPause();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeEngine.pause();&lt;br /&gt;}&lt;br /&gt;Making the game fullscreen and landscape&lt;br /&gt;&lt;br /&gt;We want to use every pixel that the device has to offer so we will make changes to the app’s AndroidManifest.xml configuration file.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the project explorer pane in Android Studio double click on the manifests folder, this will open up the AndroidManifest.xml file in the code editor.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; In the AndroidManifest.xml file, locate the following line of code: android:name=”.SnakeActivity”&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Place the cursor before the closing &amp;gt; shown above. Tap the enter key a couple of times to move the &amp;gt; a couple of lines below the rest of the line shown above.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Immediately below ParallaxActivity but BEFORE the newly positioned &amp;gt; type or copy and paste these two lines to make the game run full screen and lock it in the landscape orientation.&lt;br /&gt;&lt;br /&gt;android:theme=&quot;@android:style/Theme.NoTitleBar.Fullscreen&quot;&lt;br /&gt;android:screenOrientation=&quot;landscape&quot;&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;android:theme=&quot;@android:style/Theme.NoTitleBar.Fullscreen&quot;&lt;br /&gt;android:screenOrientation=&quot;landscape&quot;&lt;br /&gt;&lt;br /&gt;Add the sound to the project&lt;br /&gt;&lt;br /&gt;Download the sounds by right-clicking on the files listed below. Add them to the Snake project by using your operating system’s file browser go to the app\src\main folder of the project and create a new folder called assets. Add your sound files to this folder. Here are my sound effects. Right-click and select Save link as… to download them.&lt;br /&gt;&lt;br /&gt;Note: At the moment my Web host seems to be restricting me from uploading .ogg files. Just look at one of my other projects, download the files from them and rename them to suit below.&amp;nbsp; You could also make your own or download the bonus content (above). Sorry will fix this as soon as I can.&lt;br /&gt;&lt;br /&gt;snake_crash&lt;br /&gt;&lt;br /&gt;eat_bob&lt;br /&gt;&lt;br /&gt;We can now get rid of the errors by moving on to the SnakeEngine class.&lt;br /&gt;Coding SnakeEngine&lt;br /&gt;&lt;br /&gt;Add a new class called SnakeEngine and amend the code as shown next so we have all the required imports.&lt;br /&gt;import android.content.Context;&lt;br /&gt;import android.content.res.AssetFileDescriptor;&lt;br /&gt;import android.graphics.Point;&lt;br /&gt;import android.media.AudioManager;&lt;br /&gt;import android.media.SoundPool;&lt;br /&gt;import android.view.MotionEvent;&lt;br /&gt;import android.view.SurfaceHolder;&lt;br /&gt;import android.view.SurfaceView;&lt;br /&gt;import java.io.IOException;&lt;br /&gt;import java.util.Random;&lt;br /&gt;import android.content.res.AssetManager;&lt;br /&gt;import android.graphics.Canvas;&lt;br /&gt;import android.graphics.Color;&lt;br /&gt;import android.graphics.Paint;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;class SnakeEngine extends SurfaceView implements Runnable {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;import android.content.Context;&lt;br /&gt;import android.content.res.AssetFileDescriptor;&lt;br /&gt;import android.graphics.Point;&lt;br /&gt;import android.media.AudioManager;&lt;br /&gt;import android.media.SoundPool;&lt;br /&gt;import android.view.MotionEvent;&lt;br /&gt;import android.view.SurfaceHolder;&lt;br /&gt;import android.view.SurfaceView;&lt;br /&gt;import java.io.IOException;&lt;br /&gt;import java.util.Random;&lt;br /&gt;import android.content.res.AssetManager;&lt;br /&gt;import android.graphics.Canvas;&lt;br /&gt;import android.graphics.Color;&lt;br /&gt;import android.graphics.Paint;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;class SnakeEngine extends SurfaceView implements Runnable {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;When we extend SurfaceView so that the call to setContentView in the SnakeActivity class works and we implement the Runnable interface so we can later pass this class to the Thread constructor to create a Thread instance. Runnable has one method that we must implement and we will overide run soon.&lt;br /&gt;The SnakeEngine variables&lt;br /&gt;&lt;br /&gt;Add all the member variables after the class declaration then they will be ready for use as we proceed through the rest of the code.&lt;br /&gt;// Our game thread for the main game loop&lt;br /&gt;private Thread thread = null;&lt;br /&gt;&lt;br /&gt;// To hold a reference to the Activity&lt;br /&gt;private Context context;&lt;br /&gt;&lt;br /&gt;// for plaing sound effects&lt;br /&gt;private SoundPool soundPool;&lt;br /&gt;private int eat_bob = -1;&lt;br /&gt;private int snake_crash = -1;&lt;br /&gt;&lt;br /&gt;// For tracking movement Heading&lt;br /&gt;public enum Heading {UP, RIGHT, DOWN, LEFT}&lt;br /&gt;// Start by heading to the right&lt;br /&gt;private Heading heading = Heading.RIGHT;&lt;br /&gt;&lt;br /&gt;// To hold the screen size in pixels&lt;br /&gt;private int screenX;&lt;br /&gt;private int screenY;&lt;br /&gt;&lt;br /&gt;// How long is the snake&lt;br /&gt;private int snakeLength;&lt;br /&gt;&lt;br /&gt;// Where is Bob hiding?&lt;br /&gt;private int bobX;&lt;br /&gt;private int bobY;&lt;br /&gt;&lt;br /&gt;// The size in pixels of a snake segment&lt;br /&gt;private int blockSize;&lt;br /&gt;&lt;br /&gt;// The size in segments of the playable area&lt;br /&gt;private final int NUM_BLOCKS_WIDE = 40;&lt;br /&gt;private int numBlocksHigh;&lt;br /&gt;&lt;br /&gt;// Control pausing between updates&lt;br /&gt;private long nextFrameTime;&lt;br /&gt;// Update the game 10 times per second&lt;br /&gt;private final long FPS = 10;&lt;br /&gt;// There are 1000 milliseconds in a second&lt;br /&gt;private final long MILLIS_PER_SECOND = 1000;&lt;br /&gt;// We will draw the frame much more often&lt;br /&gt;&lt;br /&gt;// How many points does the player have&lt;br /&gt;private int score;&lt;br /&gt;&lt;br /&gt;// The location in the grid of all the segments&lt;br /&gt;private int[] snakeXs;&lt;br /&gt;private int[] snakeYs;&lt;br /&gt;&lt;br /&gt;// Everything we need for drawing&lt;br /&gt;// Is the game currently playing?&lt;br /&gt;private volatile boolean isPlaying;&lt;br /&gt;&lt;br /&gt;// A canvas for our paint&lt;br /&gt;private Canvas canvas;&lt;br /&gt;&lt;br /&gt;// Required to use canvas&lt;br /&gt;private SurfaceHolder surfaceHolder;&lt;br /&gt;&lt;br /&gt;// Some paint for our canvas&lt;br /&gt;private Paint paint;&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;20&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;23&lt;br /&gt;24&lt;br /&gt;25&lt;br /&gt;26&lt;br /&gt;27&lt;br /&gt;28&lt;br /&gt;29&lt;br /&gt;30&lt;br /&gt;31&lt;br /&gt;32&lt;br /&gt;33&lt;br /&gt;34&lt;br /&gt;35&lt;br /&gt;36&lt;br /&gt;37&lt;br /&gt;38&lt;br /&gt;39&lt;br /&gt;40&lt;br /&gt;41&lt;br /&gt;42&lt;br /&gt;43&lt;br /&gt;44&lt;br /&gt;45&lt;br /&gt;46&lt;br /&gt;47&lt;br /&gt;48&lt;br /&gt;49&lt;br /&gt;50&lt;br /&gt;51&lt;br /&gt;52&lt;br /&gt;53&lt;br /&gt;54&lt;br /&gt;55&lt;br /&gt;56&lt;br /&gt;57&lt;br /&gt;58&lt;br /&gt;59&lt;br /&gt;60&lt;br /&gt;61&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;// Our game thread for the main game loop&lt;br /&gt;private Thread thread = null;&lt;br /&gt;&lt;br /&gt;// To hold a reference to the Activity&lt;br /&gt;private Context context;&lt;br /&gt;&lt;br /&gt;// for plaing sound effects&lt;br /&gt;private SoundPool soundPool;&lt;br /&gt;private int eat_bob = -1;&lt;br /&gt;private int snake_crash = -1;&lt;br /&gt;&lt;br /&gt;// For tracking movement Heading&lt;br /&gt;public enum Heading {UP, RIGHT, DOWN, LEFT}&lt;br /&gt;// Start by heading to the right&lt;br /&gt;private Heading heading = Heading.RIGHT;&lt;br /&gt;&lt;br /&gt;// To hold the screen size in pixels&lt;br /&gt;private int screenX;&lt;br /&gt;private int screenY;&lt;br /&gt;&lt;br /&gt;// How long is the snake&lt;br /&gt;private int snakeLength;&lt;br /&gt;&lt;br /&gt;// Where is Bob hiding?&lt;br /&gt;private int bobX;&lt;br /&gt;private int bobY;&lt;br /&gt;&lt;br /&gt;// The size in pixels of a snake segment&lt;br /&gt;private int blockSize;&lt;br /&gt;&lt;br /&gt;// The size in segments of the playable area&lt;br /&gt;private final int NUM_BLOCKS_WIDE = 40;&lt;br /&gt;private int numBlocksHigh;&lt;br /&gt;&lt;br /&gt;// Control pausing between updates&lt;br /&gt;private long nextFrameTime;&lt;br /&gt;// Update the game 10 times per second&lt;br /&gt;private final long FPS = 10;&lt;br /&gt;// There are 1000 milliseconds in a second&lt;br /&gt;private final long MILLIS_PER_SECOND = 1000;&lt;br /&gt;// We will draw the frame much more often&lt;br /&gt;&lt;br /&gt;// How many points does the player have&lt;br /&gt;private int score;&lt;br /&gt;&lt;br /&gt;// The location in the grid of all the segments&lt;br /&gt;private int[] snakeXs;&lt;br /&gt;private int[] snakeYs;&lt;br /&gt;&lt;br /&gt;// Everything we need for drawing&lt;br /&gt;// Is the game currently playing?&lt;br /&gt;private volatile boolean isPlaying;&lt;br /&gt;&lt;br /&gt;// A canvas for our paint&lt;br /&gt;private Canvas canvas;&lt;br /&gt;&lt;br /&gt;// Required to use canvas&lt;br /&gt;private SurfaceHolder surfaceHolder;&lt;br /&gt;&lt;br /&gt;// Some paint for our canvas&lt;br /&gt;private Paint paint;&lt;br /&gt;&lt;br /&gt;We can now code the constructor.&lt;br /&gt;Coding the SnakeEngine constructor&lt;br /&gt;&lt;br /&gt;Add this code next, be sure to add it inside the closing curly brace of the SnakeEngine class.&lt;br /&gt;public SnakeEngine(Context context, Point size) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; super(context);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; context = context;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; screenX = size.x;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; screenY = size.y;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Work out how many pixels each block is&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; blockSize = screenX / NUM_BLOCKS_WIDE;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // How many blocks of the same size will fit into the height&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; numBlocksHigh = screenY / blockSize;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Set the sound up&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create objects of the 2 required classes&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Use m_Context because this is a reference to the Activity&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AssetManager assetManager = context.getAssets();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AssetFileDescriptor descriptor;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Prepare the two sounds in memory&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; descriptor = assetManager.openFd(&quot;get_mouse_sound.ogg&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; eat_bob = soundPool.load(descriptor, 0);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; descriptor = assetManager.openFd(&quot;death_sound.ogg&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snake_crash = soundPool.load(descriptor, 0);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (IOException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Error&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Initialize the drawing objects&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; surfaceHolder = getHolder();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; paint = new Paint();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // If you score 200 you are rewarded with a crash achievement!&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs = new int[200];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs = new int[200];&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start the game&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; newGame();&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;20&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;23&lt;br /&gt;24&lt;br /&gt;25&lt;br /&gt;26&lt;br /&gt;27&lt;br /&gt;28&lt;br /&gt;29&lt;br /&gt;30&lt;br /&gt;31&lt;br /&gt;32&lt;br /&gt;33&lt;br /&gt;34&lt;br /&gt;35&lt;br /&gt;36&lt;br /&gt;37&lt;br /&gt;38&lt;br /&gt;39&lt;br /&gt;40&lt;br /&gt;41&lt;br /&gt;42&lt;br /&gt;43&lt;br /&gt;44&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;public SnakeEngine(Context context, Point size) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; super(context);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; context = context;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; screenX = size.x;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; screenY = size.y;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Work out how many pixels each block is&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; blockSize = screenX / NUM_BLOCKS_WIDE;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // How many blocks of the same size will fit into the height&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; numBlocksHigh = screenY / blockSize;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Set the sound up&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create objects of the 2 required classes&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Use m_Context because this is a reference to the Activity&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AssetManager assetManager = context.getAssets();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; AssetFileDescriptor descriptor;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Prepare the two sounds in memory&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; descriptor = assetManager.openFd(&quot;get_mouse_sound.ogg&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; eat_bob = soundPool.load(descriptor, 0);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; descriptor = assetManager.openFd(&quot;death_sound.ogg&quot;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snake_crash = soundPool.load(descriptor, 0);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (IOException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Error&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Initialize the drawing objects&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; surfaceHolder = getHolder();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; paint = new Paint();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // If you score 200 you are rewarded with a crash achievement!&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs = new int[200];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs = new int[200];&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start the game&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; newGame();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;First, we initialize,&amp;nbsp; context, screenX and screenY with the values passed in from SnakeActivity. Next, we divide the number of pixels by the final int NUM_BLOCKS_WIDE in order to determine the appropriate number of pixels in the width of blockSize. Now we can use this to work out, based on the number of vertical pixels, how many blocks high the playable area will be.&lt;br /&gt;&lt;br /&gt;Next, the sound files are loaded and associated with an appropriately named identifier. They are now ready to play at will with soundPool.playSound.&lt;br /&gt;After this, we initialized the two int arrays. snakeXs will hold the horizontal coordinate of each segment of the snake and snakeYs will hold each vertical coordinate.&lt;br /&gt;&lt;br /&gt;The last part of the code we call the newGame method which unsurprisingly starts the game. We will code newGame shortly.&lt;br /&gt;Making the thread run the game loop&lt;br /&gt;&lt;br /&gt;All the in the run method, including method calls from the run method, works in a separate thread to the Android UI. This will allow our game to run smoothly at the same time as listening for player input. Add the run method as well as pause and resume and then we will talk about them.&lt;br /&gt;@Override&lt;br /&gt;public void run() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (isPlaying) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Update 10 times a second&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(updateRequired()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; update();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; draw();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;public void pause() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; isPlaying = false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; thread.join();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (InterruptedException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Error&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void resume() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; isPlaying = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; thread = new Thread(this);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; thread.start();&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;20&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;23&lt;br /&gt;24&lt;br /&gt;25&lt;br /&gt;26&lt;br /&gt;27&lt;br /&gt;28&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;@Override&lt;br /&gt;public void run() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (isPlaying) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Update 10 times a second&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if(updateRequired()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; update();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; draw();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;public void pause() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; isPlaying = false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; thread.join();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } catch (InterruptedException e) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Error&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void resume() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; isPlaying = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; thread = new Thread(this);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; thread.start();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;The pause and resume methods are called by SnakeActivity when Android or the player causes the app to call onPause or onResume. The resume method creates a new instance of Thread when required and pause stops the it when required. Now our instance of Thread will play nicely with Android.&lt;br /&gt;&lt;br /&gt;Everything in, and called by the run method, will now happen in a separate thread.&lt;br /&gt;&lt;br /&gt;The run method calls update and then draw. The whole thing is wrapped in a while loop that repeats continuously if isPlaying is set to true and the thread is running.&lt;br /&gt;&lt;br /&gt;These calls are also contained within if(updateRequired()). Only if this is true are the update and draw methods called. The updateRequired method can, therefore, control the frame rate of the game ensureing the blocky/authentic motion.&lt;br /&gt;Some more methods&lt;br /&gt;&lt;br /&gt;As we saw, the newGame method is called by the constructor it is also called when the snake crashes and a new game is required. Add the newGame method.&lt;br /&gt;public void newGame() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start with a single snake segment&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeLength = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[0] = NUM_BLOCKS_WIDE / 2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[0] = numBlocksHigh / 2;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get Bob ready for dinner&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; spawnBob();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Reset the score&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; score = 0;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Setup nextFrameTime so an update is triggered&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; nextFrameTime = System.currentTimeMillis();&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;public void newGame() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start with a single snake segment&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeLength = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[0] = NUM_BLOCKS_WIDE / 2;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[0] = numBlocksHigh / 2;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get Bob ready for dinner&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; spawnBob();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Reset the score&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; score = 0;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Setup nextFrameTime so an update is triggered&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; nextFrameTime = System.currentTimeMillis();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;In the newGame method, the snake is prepared. The length is set to just one block then the head of the snake is set to the center of the screen. The first position of each of the arrays holds the head. It is only the head that we will use when we code the collision detection. Next, Bob is prepared for a terrible demise by calling spawnBob and score is initialized to .&lt;br /&gt;&lt;br /&gt;The final bit of code in the newGame method sets nextFrameTime to whatever the current time is. This will cause the update and draw methods run.&lt;br /&gt;Spawning and eating Bob&lt;br /&gt;&lt;br /&gt;The spawnBob method uses two random int values within the ranges of zero and NUM_BLOCKS_WIDE, zero and numBlocksHigh, then initializes the horizontal and vertical location of the mouse.&lt;br /&gt;public void spawnBob() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Random random = new Random();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bobX = random.nextInt(NUM_BLOCKS_WIDE - 1) + 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bobY = random.nextInt(numBlocksHigh - 1) + 1;&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;public void spawnBob() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Random random = new Random();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bobX = random.nextInt(NUM_BLOCKS_WIDE - 1) + 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bobY = random.nextInt(numBlocksHigh - 1) + 1;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Optimization tip: Instantiating a new instance of Random is slow and could be done in the constructor then just reused each time spawnBob is called. In this context, however it will not affect the smooth running of the game.&lt;br /&gt;&lt;br /&gt;The eatBob method is simple too.&lt;br /&gt;&lt;br /&gt;The snake’s length is increased by one block, a new mouse is spawned, 1 is added to the score and a sound effect is played.&lt;br /&gt;&lt;br /&gt;Here is the code for the eatBob method to add after the spawnBob method.&lt;br /&gt;private void eatBob(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; Got him!&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Increase the size of the snake&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeLength++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //replace Bob&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // This reminds me of Edge of Tomorrow. Oneday Bob will be ready!&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; spawnBob();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //add to the score&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; score = score + 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; soundPool.play(eat_bob, 1, 1, 0, 0, 1);&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;private void eatBob(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; Got him!&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Increase the size of the snake&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeLength++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //replace Bob&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // This reminds me of Edge of Tomorrow. Oneday Bob will be ready!&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; spawnBob();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //add to the score&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; score = score + 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; soundPool.play(eat_bob, 1, 1, 0, 0, 1);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;The moveSnake method is quite long but doesn’t involve anything too tricky. Add the code and then we can go through it.&lt;br /&gt;private void moveSnake(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Move the body&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = snakeLength; i &amp;gt; 0; i--) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start at the back and move it&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // to the position of the segment in front of it&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[i] = snakeXs[i - 1];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[i] = snakeYs[i - 1];&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Exclude the head because&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // the head has nothing in front of it&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Move the head in the appropriate heading&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (heading) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[0]--;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case RIGHT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[0]++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case DOWN:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[0]++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case LEFT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[0]--;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;20&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;23&lt;br /&gt;24&lt;br /&gt;25&lt;br /&gt;26&lt;br /&gt;27&lt;br /&gt;28&lt;br /&gt;29&lt;br /&gt;30&lt;br /&gt;31&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;private void moveSnake(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Move the body&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = snakeLength; i &amp;gt; 0; i--) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start at the back and move it&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // to the position of the segment in front of it&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[i] = snakeXs[i - 1];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[i] = snakeYs[i - 1];&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Exclude the head because&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // the head has nothing in front of it&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Move the head in the appropriate heading&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (heading) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[0]--;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case RIGHT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[0]++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case DOWN:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeYs[0]++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case LEFT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snakeXs[0]--;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;The for loop starts at the last block of the snake in snakeXs and snakeYs and advances it into the location previously occupied by the block ahead of it. When the for loop is complete the last position is in the place the block ahead used to be in and the block that was just behind the head is where the head used to be.&lt;br /&gt;&lt;br /&gt;Therefore, as long as we handle the head properly all the other blocks will be correctly positioned too.&lt;br /&gt;&lt;br /&gt;To move the head we switch based on the current value of heading and add or subtract 1 from either the heads vertical or horizontal position.&lt;br /&gt;&lt;br /&gt;In the detectDeath method, we do collision detection. Notice in the code that follows we check for two things. Has the snake’s head bumped into the edge of the screen and has the snake’s head bumped into a block of the snake’s body?&lt;br /&gt;private boolean detectDeath(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Has the snake died?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; boolean dead = false;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Hit the screen edge&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeXs[0] == -1) dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeXs[0] &amp;gt;= NUM_BLOCKS_WIDE) dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeYs[0] == -1) dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeYs[0] == numBlocksHigh) dead = true;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Eaten itself?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = snakeLength - 1; i &amp;gt; 0; i--) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((i &amp;gt; 4) &amp;amp;&amp;amp; (snakeXs[0] == snakeXs[i]) &amp;amp;&amp;amp; (snakeYs[0] == snakeYs[i])) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return dead;&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;private boolean detectDeath(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Has the snake died?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; boolean dead = false;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Hit the screen edge&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeXs[0] == -1) dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeXs[0] &amp;gt;= NUM_BLOCKS_WIDE) dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeYs[0] == -1) dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeYs[0] == numBlocksHigh) dead = true;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Eaten itself?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = snakeLength - 1; i &amp;gt; 0; i--) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((i &amp;gt; 4) &amp;amp;&amp;amp; (snakeXs[0] == snakeXs[i]) &amp;amp;&amp;amp; (snakeYs[0] == snakeYs[i])) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dead = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return dead;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;If either of the collision possibilities happens then detectDeath returns true to the update method which takes further action.&lt;br /&gt;Coding the update method&lt;br /&gt;&lt;br /&gt;This method does three things:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; It checks if the head has touched/eaten a mouse. If it has then the eatBob method handles things.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; It calls the moveSnake method which was coded previously.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; It calls the detectDeath method and if it returns true a sound is played and the game begins again.&lt;br /&gt;&lt;br /&gt;All this happens ten times per second because of the way updateRequired will work. We will code updateRequired in a minute. Add the code for the update method.&lt;br /&gt;public void update() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Did the head of the snake eat Bob?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeXs[0] == bobX &amp;amp;&amp;amp; snakeYs[0] == bobY) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; eatBob();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; moveSnake();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (detectDeath()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //start again&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; soundPool.play(snake_crash, 1, 1, 0, 0, 1);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; newGame();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;public void update() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Did the head of the snake eat Bob?&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (snakeXs[0] == bobX &amp;amp;&amp;amp; snakeYs[0] == bobY) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; eatBob();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; moveSnake();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (detectDeath()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //start again&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; soundPool.play(snake_crash, 1, 1, 0, 0, 1);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; newGame();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Drawing the game&lt;br /&gt;&lt;br /&gt;Add all the code for the draw method and then we will go through it.&lt;br /&gt;public void draw() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get a lock on the canvas&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (surfaceHolder.getSurface().isValid()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas = surfaceHolder.lockCanvas();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Fill the screen with Game Code School blue&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawColor(Color.argb(255, 26, 128, 182));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Set the color of the paint to draw the snake white&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint.setColor(Color.argb(255, 255, 255, 255));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Scale the HUD text&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint.setTextSize(90);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawText(&quot;Score:&quot; + score, 10, 70, paint);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Draw the snake one block at a time&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; snakeLength; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawRect(snakeXs[i] * blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (snakeYs[i] * blockSize),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (snakeXs[i] * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (snakeYs[i] * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Set the color of the paint to draw Bob red&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint.setColor(Color.argb(255, 255, 0, 0));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Draw Bob&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawRect(bobX * blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (bobY * blockSize),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (bobX * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (bobY * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Unlock the canvas and reveal the graphics for this frame&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; surfaceHolder.unlockCanvasAndPost(canvas);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;20&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;23&lt;br /&gt;24&lt;br /&gt;25&lt;br /&gt;26&lt;br /&gt;27&lt;br /&gt;28&lt;br /&gt;29&lt;br /&gt;30&lt;br /&gt;31&lt;br /&gt;32&lt;br /&gt;33&lt;br /&gt;34&lt;br /&gt;35&lt;br /&gt;36&lt;br /&gt;37&lt;br /&gt;38&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;public void draw() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Get a lock on the canvas&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (surfaceHolder.getSurface().isValid()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas = surfaceHolder.lockCanvas();&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Fill the screen with Game Code School blue&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawColor(Color.argb(255, 26, 128, 182));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Set the color of the paint to draw the snake white&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint.setColor(Color.argb(255, 255, 255, 255));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Scale the HUD text&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint.setTextSize(90);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawText(&quot;Score:&quot; + score, 10, 70, paint);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Draw the snake one block at a time&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; snakeLength; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawRect(snakeXs[i] * blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (snakeYs[i] * blockSize),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (snakeXs[i] * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (snakeYs[i] * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Set the color of the paint to draw Bob red&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint.setColor(Color.argb(255, 255, 0, 0));&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Draw Bob&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; canvas.drawRect(bobX * blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (bobY * blockSize),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (bobX * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; (bobY * blockSize) + blockSize,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; paint);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Unlock the canvas and reveal the graphics for this frame&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; surfaceHolder.unlockCanvasAndPost(canvas);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;First, we lock the surface which is required by Android. If this works, we clear the screen with drawColor and then change the color of all future objects we will draw by calling setColor. We do this once for the snake and once for Bob. Now we draw the text for the score.&lt;br /&gt;&lt;br /&gt;We use a for loop to draw a block/square to represent each block of the snake. The code positions the blocks to screen coordinates by using their grid positions(contained in the array) multiplied by blockSize which was determined in the constructor based on screen resolution.&lt;br /&gt;&lt;br /&gt;Now we can draw single block to represent Bob.&lt;br /&gt;Coding updateRequired&lt;br /&gt;&lt;br /&gt;We are almost done!&lt;br /&gt;&lt;br /&gt;The updateRequired method will let us know if the nextFrameTime variable has been exceeded by the actual current time. If it has then a new time is retrieved and put back in nextFrameTime. The method then returns true allowing draw and update to execute. If not, false is returned and the next frame is delayed until it is time.&lt;br /&gt;&lt;br /&gt;You can now add the updateRequired method.&lt;br /&gt;public boolean updateRequired() {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Are we due to update the frame&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(nextFrameTime &amp;lt;= System.currentTimeMillis()){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Tenth of a second has passed&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Setup when the next update will be triggered&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nextFrameTime =System.currentTimeMillis() + MILLIS_PER_SECOND / FPS;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Return true so that the update and draw&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // functions are executed&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;public boolean updateRequired() {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Are we due to update the frame&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(nextFrameTime &amp;lt;= System.currentTimeMillis()){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Tenth of a second has passed&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Setup when the next update will be triggered&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nextFrameTime =System.currentTimeMillis() + MILLIS_PER_SECOND / FPS;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Return true so that the update and draw&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // functions are executed&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Handling screen touches (player input)&lt;br /&gt;&lt;br /&gt;The final code handles the player removing their finger. Holding won’t work. The onTouchEvent method uses motionEvent.getAction to detect MotionEvent.ACTION_UP. This notifies us the player’s finger has left the screen. We then use motionEvent.getX() to determine if that action was on the left or the right of the screen.&lt;br /&gt;&lt;br /&gt;If they tap on the left side of the screen then the snake moves to the next direction in the enumeration going anti-clockwise if they tap on the right then it’s clockwise.&lt;br /&gt;&lt;br /&gt;It’s meant to be awkward, it is authentic to the original. Add this code to handle touches on the screen.&lt;br /&gt;@Override&lt;br /&gt;public boolean onTouchEvent(MotionEvent motionEvent) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (motionEvent.getAction() &amp;amp; MotionEvent.ACTION_MASK) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case MotionEvent.ACTION_UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (motionEvent.getX() &amp;gt;= screenX / 2) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch(heading){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.RIGHT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case RIGHT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.DOWN;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case DOWN:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.LEFT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case LEFT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.UP;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch(heading){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.LEFT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case LEFT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.DOWN;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case DOWN:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.RIGHT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case RIGHT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.UP;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;}&lt;br /&gt;1&lt;br /&gt;2&lt;br /&gt;3&lt;br /&gt;4&lt;br /&gt;5&lt;br /&gt;6&lt;br /&gt;7&lt;br /&gt;8&lt;br /&gt;9&lt;br /&gt;10&lt;br /&gt;11&lt;br /&gt;12&lt;br /&gt;13&lt;br /&gt;14&lt;br /&gt;15&lt;br /&gt;16&lt;br /&gt;17&lt;br /&gt;18&lt;br /&gt;19&lt;br /&gt;20&lt;br /&gt;21&lt;br /&gt;22&lt;br /&gt;23&lt;br /&gt;24&lt;br /&gt;25&lt;br /&gt;26&lt;br /&gt;27&lt;br /&gt;28&lt;br /&gt;29&lt;br /&gt;30&lt;br /&gt;31&lt;br /&gt;32&lt;br /&gt;33&lt;br /&gt;34&lt;br /&gt;35&lt;br /&gt;36&lt;br /&gt;37&lt;br /&gt;38&lt;br /&gt;39&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;@Override&lt;br /&gt;public boolean onTouchEvent(MotionEvent motionEvent) {&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (motionEvent.getAction() &amp;amp; MotionEvent.ACTION_MASK) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case MotionEvent.ACTION_UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (motionEvent.getX() &amp;gt;= screenX / 2) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch(heading){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.RIGHT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case RIGHT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.DOWN;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case DOWN:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.LEFT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case LEFT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.UP;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch(heading){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case UP:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.LEFT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case LEFT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.DOWN;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case DOWN:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.RIGHT;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case RIGHT:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; heading = Heading.UP;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/5026251251838646735/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2020/05/coding-snake-game-for-android.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5026251251838646735'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5026251251838646735'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2020/05/coding-snake-game-for-android.html' title='Coding a Snake Game for Android'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-2950336484466415855</id><published>2011-12-07T08:47:00.001-08:00</published><updated>2011-12-07T08:47:15.554-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Asp.Net"/><category scheme="http://www.blogger.com/atom/ns#" term="Validating ASP.NET Server Controls"/><title type='text'>Validating ASP.NET Server Controls on Asp.Net !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 1;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 24pt;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By Bill Evjen&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Reuters&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;December 2003&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Applies to:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Microsoft® ASP.NET&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Microsoft Visual Basic® .NET&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Microsoft Visual C#® .NET&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Summary: &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Learn how to use all the available ASP.NET validation server controls that are at your disposal. This paper introduces these new controls and discusses tips and tricks on working with them in practical scenarios. (34 printed pages)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Introduction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Looking at Validation&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RequiredFieldValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CompareValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RangeValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RegularExpressionValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CustomValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The ValidationSummary Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Conclusion&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;Introduction&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In your studies of ASP.NET, you might have been introduced to a number of different types of controls, whether HTML server controls or Web server controls. This paper focuses on a series of controls that stand out from the rest—&lt;i&gt;validation server controls&lt;/i&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation server controls are a series of controls that help you validate the data that the user enters into the other controls that are provided with ASP.NET. They determine whether the form can be processed based upon the rules that you define in the validation server controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;Looking at Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One of the most common elements of Web pages is a form in which the user can input data that is posted back to the server. These forms are made up of different types of HTML elements that are constructed using straight HTML, HTML server controls, or Web server controls. A variety of HTML elements, such as text boxes, check boxes, radio buttons, drop-down lists and more, can be used in forms.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Often when your ASP.NET applications are collecting information from a user, you want to ensure that the data that you collect is valid. Some users are not interested in spending enough time to enter the correct information into a form, and in some cases, users might even intentionally enter false information to gain access or get past a certain step in your application&#39;s workflow process.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One of the first steps is to understand what validating data means. Validating, in this case, does not mean that if John Doe types his name into the form field of a text box as Fred Doe the computer sends an alert to inform you that the data is untruthful. No, we still do not have the capability to find out whether a statement is true.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation is testing to determine whether the user entered &lt;i&gt;something&lt;/i&gt; into the field. After you determine that something was entered, you can then also check to see whether what was entered is a number or a character and if it is in the correct format. From there, you can compare user input in different fields or against values that might be held in other repositories, such as a database. You can check for many types of information, as you learn in the rest of this article.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Data collection on the Internet is one of its most important features, so you must make sure that the data you collect has value and meaning. You ensure this by eliminating any chance that the information collected does not abide by the rules you outline.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Understanding the Difference Between Server-Side and Client-Side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Many people new to ASP.NET don&#39;t know the difference between client-side and server-side validation. You must understand these two different ways of validating the data users input into a Web form.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;After the user enters data into a Web form, clicks the &lt;b&gt;Submit&lt;/b&gt; button, and sends the form data to the server as a request, you can perform server-side validation on the data. If the data is incorrect or not valid, you can send back a response stating this. If, however, when the user clicks the &lt;b&gt;Submit&lt;/b&gt; button, a scripting language that is part of the overall HTML page is initiated to check the validity of the data before it is sent to the server, this is client-side validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;It was a lot easier to understand the difference between these forms of validation when you coded Active Server Pages 3.0 because, as the programmer, you personally performed almost all data validation. You yourself either programmed it to be client-side or server-side.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;When you used server-side validation with ASP 3.0, if something the user entered was wrong, you could repost the form and ask the user to correct the information in that particular field of the form. Sometimes, you carried the correct input from the other fields back to the form page, and populated the fields for the users so they didn&#39;t have to re-enter the same information again. Some sites on the Internet don&#39;t carry this inputted information back to the form page, and the user is then required to enter all the information into the form a second time. Obviously, this may cause people to leave your site for another.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The bad thing about server-side validation is that it requires trips back and forth to the server. This takes a lot of resources and makes for a slower-paced form for the user. Nothing is more annoying to a user who is on a dial-up connection than clicking the &lt;b&gt;Submit&lt;/b&gt; button on the form and then waiting for 20 seconds to find out that they didn&#39;t enter their password correctly.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The other option for form validation is to put some client-side JavaScript or VBScript at the top of the ASP page that checks if the information in the fields is correct. This takes care of the problem of making unnecessary trips to the server, but it requires another language to learn and manage. JavaScript is a great language, but takes a lot of time to master, and there are always problems getting your JavaScript code to work on different browsers. Listing 1 shows you an example of using client-side JavaScript to perform form validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 1: Client-side JavaScript for form validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet0&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script language=&quot;javascript&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;!--&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Function CheckForm(form)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; for(var intCtr = 0; intCtr &amp;lt;= (form.elements.length - 5); ++intCtr)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var temp = form.elements[intCtr];&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(temp.type == &quot;text&quot; &amp;amp;&amp;amp; temp.value == &quot;&quot;)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&quot;Please Enter All Information!&quot;);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp.focus();&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; return true;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;//--&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;This sample piece of JavaScript does some validation, but it doesn&#39;t check for all the in-formation that you might need on the form you are building. This piece of code determines only whether the user entered anything at all in all five fields within the form. It does not determine whether the user entered an actual e-mail address within the e-mail address text box, whether the user entered a number between two given numbers, or whether the password and the confirm password text boxes match. After awhile, you can see that you need many JavaScript functions to obtain the level of form validation required.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;.NET to the Rescue!&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Developers who used classic Active Server Pages 3.0 to develop Web pages might remember that they used to spend a considerable amount of their time developing validation mechanics in their pages. It was time consuming if you did it right. It was most efficient to do the validation of the form on the client-side to limit the number of requests and responses required to work through an application. As I stated, however, you were never quite sure if the requesting browser would understand the scripting code that you used for the validation. So, it was usually better, especially for critical Web applications, to bring the validation to the server.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;ASP.NET has changed this by giving you the capability to use the validation server controls that are provided with the other new controls at your disposal. What makes these validation server controls effective is that when an ASP.NET page containing these controls is requested, it is the ASP.NET engine that decides whether to perform the validation on the client or on the server depending on the browser that is making the request. Therefore, your page&#39;s functionality changes depending on the requesting browser—thus enabling you to make your Web pages the best they can possibly be—rather than dummying-down your Web applications for the lowest common denominator.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation server controls are the only type of ASP.NET server controls that also generate client-side script. All the other controls work with the idea of making postbacks to the server (a request to the server to get a response).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Presently, six different validation server controls are available for ASP.NET: &lt;/span&gt;&lt;/div&gt;&lt;ul type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RequiredFieldValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CompareValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RangeValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RegularExpressionValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CustomValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;ValidationSummary&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can also customize validation for your own needs. Then, if there are any errors in the form data, these validation server controls enable you to customize the display of error information on the browser.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You place validation server controls on your page as you would any other type of controls. After the user submits the form, the user&#39;s form information is sent to the appropriate validation control, where it is evaluated. If the information doesn&#39;t validate, the control sets a page property that indicates this. After all the form information is sent to all the validation server controls, if one or more of the validation server controls cannot validate the information sent to it, the entire form input is found to be invalid, and the user is notified.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Table 1 describes each of the six validation server controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Table 1: Available validation server controls&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184;&quot;&gt;&lt;tbody&gt;
&lt;tr style=&quot;mso-yfti-firstrow: yes; mso-yfti-irow: 0;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation   Server Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Description&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 1;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RequiredFieldValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Ensures that the user does not   skip a form entry field&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 2;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CompareValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Allows for comparisons between the   user&#39;s input and another item using a comparison operator (equals, greater   than, less than, and so on)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 3;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RangeValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Checks the user&#39;s input based upon   a lower- and upper-level range of numbers or characters&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 4;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RegularExpressionValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Checks that the user&#39;s entry   matches a pattern defined by a regular expression. This is a good control to   use to check e-mail addresses and phone numbers&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 5;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CustomValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Checks the user&#39;s entry using   custom-coded validation logic&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 6; mso-yfti-lastrow: yes;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;ValidationSummary&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Displays all the error messages   from the validators in one specific spot on the page&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Not all button clicks are equal&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Normally, in a series of HTML form elements, there is some sort of Button, ImageButton, or LinkButton control on the page that submits the form and causes the validation to initiate. This might not be the functionality that you are always looking for in your Web forms. You may not want each and every button on the ASP.NET page to initiate validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;For instance, you might have a Cancel or Reset button on the Web page. If the user clicks one of these buttons, you don&#39;t want that button click to validate the contents contained in the Web form.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To prevent this, you have to set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;CausesValidation&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property for the control to &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;False&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet1&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:Button id=&quot;Button1&quot; runat=&quot;server&quot; Text=&quot;Button&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; CausesValidation=&quot;False&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The RequiredFieldValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RequiredFieldValidator server control makes sure that the user enters something into the field that it is associated with in the form. You need to tie the RequiredFieldValidator to each control that is a required field in the form. Although this is the simplest of the validation server controls, you must understand certain things about it.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To see an example of using the RequiredFieldValidator server control, create a Web form that contains a TextBox server control and a Button server control. Next to the button, place a RequiredFieldValidator server control. Your ASP.NET page should look like the code illustrated in Listing 2.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 2: Using the RequiredFieldValidator control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet2&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Page is valid!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id=&quot;RequiredFieldValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Required!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet3&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Page is valid!&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id=&quot;RequiredFieldValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Required!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Run this page and then omit putting a value in the text box. When you click the button, you get a result similar to that shown in Figure 1.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 1: Causing the RequiredFieldValidator server control to fire&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;There are a few things to be aware of when using the RequiredFieldValidator server control in your ASP.NET pages. First of all, the most important property of this validation control is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ControlToValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The value assigned to this control needs to be the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property for the control to which you want to link the RequiredFieldValidator control. You can link only one RequiredFieldValidator server control to any other server control on the page. For instance, if you have three required TextBox controls on your ASP.NET page, you need three separate RequiredFieldValidator controls to make sure that they are all required.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The second property of this control is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. This is the text that appears where the RequiredFieldValidator control is located on the ASP.NET page if the TextBox is left empty. Instead of using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, you can also use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet4&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Required!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Or you can use the following construct:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet5&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Required!&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;As you run this simple page, notice a few things. First of all, if you are running a client that is considered an upper-level browser (for example, Internet Explorer 4.0 or better), the code generated to perform the validation is client-side. To see this, right-click the page, and then click &lt;b&gt;View Source&lt;/b&gt;. You see JavaScript in the code of the page.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The JavaScript in the code of the page means that the required field checking against the text box on the page is done client-side. To test this, simply click the button on the page, and you see the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Required!&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; error message displayed. Next, enter a value in the TextBox control, and then press TAB. The RequiredFieldValidator server control is then triggered.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By default, red text is used for the error messages that are shown by these validation server controls. As with most of the ASP.NET server controls, however, you can change the style of the controls by changing the properties of the control in code or within the designer. For instance, you can apply a more complex style as illustrated here:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet6&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; BackColor=&quot;DarkGray&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; BorderColor=&quot;Black&quot; BorderStyle=&quot;Solid&quot; BorderWidth=&quot;1px&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ForeColor=&quot;White&quot; Font-Bold=&quot;True&quot; Font-Names=&quot;Verdana&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Font-Size=&quot;X-Small&quot;&amp;gt;&amp;amp;nbsp;Enter something&amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using code similar to the preceding, you can get a more elaborate result, as shown in Figure 2.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 2: A RequiredFieldValidator control with a little more style&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 5.0pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Note&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;The RequiredFieldValidation server control works with most HTML form elements except for check boxes. You cannot validate against the CheckBox or CheckBoxList server controls using the RequiredFieldValidator server control. Instead you need to use the CustomValidator server control. An example of this is shown later in this article.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Double-Checking Client-Side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One interesting point is that even though the form data is validated on the client (eliminating the need for additional requests to and responses from the server to validate the data), the data entered is re-verified on the server. After the data is checked on the client and found valid, it is rechecked on the server using the same validation rules. These are rules that you establish to ensure against some tricky programmer out there trying to bypass the validation process by posting the page to the server as if it passed validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Using the InitialValue Property with a TextBox Server Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Another property to be aware of when working with the RequiredFieldValidator server control is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. Instead of being empty, HTML form elements can be populated with default values. In this case, you expect the user to change the value in these elements.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;This situation is illustrated in the Listing 3, which shows a TextBox server control with an associated RequiredFieldValidator server control.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 3: A TextBox control with a default value&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet7&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;Hello&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please change value&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; InitialValue=&quot;Hello&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, the single text box has a default value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Hello&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. The value you place here can be from any source, even a dynamic source. There is also a RequiredFieldValidator server control that is assigned to validate this text box. In this case, you want the user to change the initial value of this control to something other than the default value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property —&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Hello&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. You can also populate the value of this property from a dynamic source, just as you can populate the TextBox server control from a dynamic source.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet8&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;RequiredFieldValidator1.InitialValue = some value&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Because of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, if the user tries to submit the form without changing the value in the text box, the RequiredFieldValidator control fires and the form does not post to the server. If the user changes the value in the text box and submits the form, this RequiredFieldValidator control does not fire and the form is posted.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Requiring a Value Change and Disallowing Empty Values at the Same Time&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;When using the RequiredFieldValidator control against a text-based control such as a TextBox control, you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The form validation fails if the value contained in the associated control is not changed from this value. If you use this kind of construct, however, the user can change the value of the text box in any manner to get past the validation. He or she can even empty the text box of any value, and it still passes the validation process.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In some situations, you can require the user not only to change the initial value of the text box, but also to input some value so that it is not empty. To do this, use two RequiredFieldValidator server controls. The first RequiredFieldValidator server control uses the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to ensure that the user changes the default value in the text box that the control is associated with. The second RequiredFieldValidator control validates that the same text box is not left empty, as illustrated in Listing 4.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 4: A single TextBox control with two RequiredFieldValidator controls&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet9&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;Hello&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please change value&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; InitialValue=&quot;Hello&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Do not leave empty&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Using the InitialValue Property with a DropDownList Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;A good way of using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is with the DropDownList server control. For instance, a drop-down list might have a default value that is not an empty value (by default, some text appears in it). An example of a drop-down list with the RequiredFieldValidator that uses the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is illustrated in Listing 5.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 5: Using the RequiredFieldValidator server control with the Drop-DownList server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet10&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:DropDownList id=&quot;DropDownList1&quot; runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem Selected=&quot;True&quot;&amp;gt;Select a profession&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Programmer&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Lawyer&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Doctor&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Artist&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:DropDownList&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please make a selection&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;DropDownList1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; InitialValue=&quot;Select a profession&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using this kind of construct enables you to place a description of the actions required in the drop-down list and also requires the user to make a selection from the choices. To get past the validation process, the user must make a selection other than the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Select a profession&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; choice. If the user doesn&#39;t enter a profession, an error message is returned (see Figure 3). It takes a lot of code to write your own JavaScript function for this procedure, and that JavaScript also has to be browser-independent. With ASP.NET, the RequiredFieldValidator server control takes care of that.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 3: Validation error based upon the DropDownList control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The CompareValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CompareValidator server control compares the value entered into the form field to another field, a database value, or other value that you specify. When comparing against data types, you just set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Operator&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;—&lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DataTypeCheck&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. After that is done, you can set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; attribute to &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Double&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Date&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, or &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Currency&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; in the CompareValidator control to make sure that the user&#39;s input into the field is the specified type.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Validating Against Other Controls on the Web Form&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using the CompareValidator server control, you can make comparisons between different controls within a form on your ASP.NET page. For example, if you want to compare what the user enters in the &lt;b&gt;Password&lt;/b&gt; field to the entry in the &lt;b&gt;Confirm Password&lt;/b&gt; field to see whether they are the same, you can use the CompareValidator server control. Using these two fields is a common practice when a form asks for a password. It ensures that the user doesn&#39;t mistype the password (see Listing 6).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 6: Using the CompareValidator server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet11&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Passwords match&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Passwords do not match!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ControlToValidate=&quot;TextBox2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToCompare=&quot;TextBox1&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Confirm Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox2&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Login&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet12&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Passwords match&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Passwords do not match!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToCompare=&quot;TextBox1&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Confirm Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox2&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Login&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, the Web form uses two TextBox server controls. One is for the user to enter the password, and the second TextBox control requires the user to enter the password again to ensure they didn&#39;t mistype the original. By using the CompareValidator server control, you guarantee that they are equal strings. If they are not equal, the page returns an error message (see Figure 4). If they are equal, your page submits as valid.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 4: In this example, the user mistyped the password and got an error message.&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Validating Against Constants&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can also use the CompareValidator server control to make sure that the value typed into the form field by a user is valid when compared against a constant, some dynamic value that you retrieve, or that it adheres to a specific data type. Listing 7 shows an example of this.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 7: Checking to make sure value entered is of a specific data type&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet13&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Age: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot; MaxLength=&quot;3&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;You must enter a number&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; Type=&quot;Integer&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Operator=&quot;DataTypeCheck&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, the user must enter an integer in the text box; otherwise, the CompareValidator server control fires and displays an error message on the page. By giving the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property of the CompareValidator server control a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, you ensure that the value entered in the text box conforms to this .NET Framework data type.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You also have the option of not only comparing values against specific data types, but also ensuring that values are valid when compared against certain constants (see Listing 8).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 8: Comparing values against constants for validity&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet14&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Age: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Operator=&quot;GreaterThan&quot; ValueToCompare=&quot;18&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; ErrorMessage=&quot;You must be older than &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; 18 to join&quot; Type=&quot;Integer&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this case, a few checks are made against any value that the user types in the text box. The first is based on the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property in the CompareValidator server control. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property has the value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, therefore any value placed in the text box needs to conform to this .NET Framework data type. If the user enters a &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; into the text box, the form submission is invalid. The next property is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Operator&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. This property has a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;GreaterThan&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, meaning that for the form submission to be valid, the value entered in the text box has to be greater than the value that is assigned to the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ValueToCompare&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. For this CompareValidator server control, the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ValueToCompare&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property has a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;18&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. This means that the value entered in the text box on the page must be an &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; greater than &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;18&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. If it does not meet these criteria, the value is considered invalid, and the CompareValidator server control displays an error message in the browser.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the situation shown in Listing 8, you are not comparing two fields in the form; instead, you are comparing one field against a value that you have specified in code. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Operator&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property can contain one of the following values: &lt;/span&gt;&lt;/div&gt;&lt;ul type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Equal&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;NotEqual&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;GreaterThan&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;GreaterThanEqual&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;LessThan&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;LessThanEqual&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DataTypeCheck&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The RangeValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RangeValidator server control is similar to the CompareValidator server control, but the RangeValidator server control compares what is entered into the form field with two values and makes sure that what was entered by the user is between these two specified values.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;For instance, imagine that you have a text box where you want end users to enter their ages. Instead of being greater than or less than a specific constant, you want the values entered to be between a specific range of numbers. For this, you use the RangeValidator server control, as illustrated in Listing 9.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 9: Using the RangeValidator server control to work with a range of numbers&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet15&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Age: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RangeValidator id=&quot;RangeValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; Type=&quot;Integer&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;You must be between 30 and 40&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; MaximumValue=&quot;40&quot; MinimumValue=&quot;30&quot;&amp;gt;&amp;lt;/asp:RangeValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this case, the user should enter a value between &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;30&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;40&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; in the text box. If some number is entered that is outside of this range, the RangeValidator server control fires an error message and considers the form submission invalid.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property enables you to make comparisons against many different .NET Framework types, such as &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Double&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Date&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Currency&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. These choices enable you to do a number of range comparisons. For instance, you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Currency&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value in the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to retrieve monetary-value entries that are within a certain range. You can also use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Date&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value for the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to make sure that the entry is between specific date ranges.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Also, just as you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; data type in the CompareValidator server control, you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; data type with the RangeValidator server control to make sure that the value entered falls within a specific range of characters. For example, if the user is entering her last name, and you want only people with last names starting with M and P to proceed, you can easily do this by using the RangeValidator server control, as illustrated in Listing 10.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 10: Comparing an entry to a range of characters&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet16&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Last name: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RangeValidator id=&quot;RangeValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;Your last name needs to be between M and P&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; MaximumValue=&quot;Q&quot; MinimumValue=&quot;M&quot;&amp;gt;&amp;lt;/asp:RangeValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the example in Listing 10, the value is being checked against a range that is specified by using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;MaximumValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;MinimumValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; properties. Notice, in this example, that the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is not specified. In this case, it doesn&#39;t need to be specified because the default value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. If not specified, it is considered to have the value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The RegularExpressionValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RegularExpressionValidator server control is a validation control that enables you to check the user&#39;s input based on a pattern defined by a regular expression. This is a great control to check whether the user has entered a valid e-mail address or telephone number. In the past, these kinds of validations took a considerable amount of JavaScript coding. The RegularExpressionValidator control with ASP.NET saves coding time.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the Properties window for the RegularExpressionValidator server control, click the button in the ValidationExpression box, and Visual Studio.NET provides you with a short list of expressions to use in your form via the Regular Expression Editor. However, you are not limited to these regular expressions in your ASP.NET applications. The list of prepared expressions is shown in Figure 5.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 5: The Regular Expression Editor&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;For an example of using the RegularExpressionValidator server control to make sure that a value entered in a text box is an e-mail address, look at Listing 11.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 11: Validating an e-mail address&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet17&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Email: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RegularExpressionValidator id=&quot;RegularExpressionValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;You must enter an email address&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ValidationExpression=&quot;\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RegularExpressionValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, notice that you place the Internet e-mail address regular expression in your &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ValidationExpression&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The great thing is that it is pretty simple, and it takes hardly any coding. Figure 6 shows the error message that results if a user enters an incorrect e-mail address in the text box. &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 6: Validating whether an e-mail address is entered in a text box&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 5.0pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Note&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;The e-mail address is checked only to see whether it is in the correct format. The e-mail address is not checked in to ensure that it is an actual e-mail address.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;A great place on the Internet to find free regular expressions is the RegEx Library at&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Using Images for Your Error Messages&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One interesting way of showing your error messages when using validation controls is to use images along with text for identifying errors on your ASP.NET pages. This secret is not limited to the RegularExpressionValidator server control, but can be used with all the validation server controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To use an image instead of text for your error messages, you create something similar to the code in Listing 13.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 13: Using images for your validation messages&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet18&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Email: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RegularExpressionValidator id=&quot;RegularExpressionValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&#39;&amp;lt;img src=&quot;error.gif&quot;&amp;gt;&#39;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ValidationExpression=&quot;\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RegularExpressionValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To use an image instead of text for your error messages, you use an HTML string that points to the image that you want to display for the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property (see Figure 7).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 7: An image is displayed when the incorrect e-mail address is entered.&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The CustomValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You are not limited to the validation controls that have been shown thus far in this article; you also have the CustomValidator server control. The CustomValidator server control enables you to develop your own custom server-side or client-side validations. At times, you may want to compare the user&#39;s input to a value in a database, or to determine whether his input conforms to some arithmetic validation that you are looking for (for instance, if the number is even or odd). You can do all this and more by using this type of validation control.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Client-side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One of the cool things about using the validation controls, in general, is that they allow for client-side validation of certain HTML server controls. As I said, you can create your own JavaScript functions that provide you with a higher level of validation capabilities.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 14 illustrates how to use JavaScript and the CustomValidator server control to expand upon the default validation capabilities that are provided to you with the .NET Framework.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 14: Creating your own client-side validation functions&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet19&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID NUMBER!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script language=&quot;JavaScript&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function validateNumber(oSrc, args) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (args.Value % 5 == 0);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be divisible by 5&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClientValidationFunction=&quot;validateNumber&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet20&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID NUMBER!&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script language=&quot;JavaScript&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function validateNumber(oSrc, args) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (args.Value % 5 == 0);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be divisible by 5&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClientValidationFunction=&quot;validateNumber&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The important part of the CustomValidator server control here is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The value of this property must be the client-side JavaScript function that is in the page—in this case, the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;validateNumber&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; function. By simply using this with the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, you have tied the validation process to the custom client-side function that you created, as illustrated in Figure 8.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 8: Performing a custom client-side validation using the CustomValidator server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;args.IsValid&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to either &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; or &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;False&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; in the JavaScript function. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;args.Value&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is the value from the user that is retrieved from the control that the CustomValidator server control is tied to.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using the ClientValidationFunction property enables you to incorporate your own JavaScript functions into ASP.NET controls so that they behave like the other validation controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Server-side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The other way of performing validation on Web forms using the CustomValidator server control is to use server-side validation. This is just as easy as the client-side validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Server-side validation of your Web forms enables you to create rather elaborate validation capabilities. Listing 15 shows you a not-too-elaborate example of server-side checking. Here the code determines whether the number entered in the text box on the ASP.NET page is even.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 15: Creating your own server-side validation functions&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet21&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Page.IsValid Then&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID ENTRY!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub ValidateNumber(sender As Object, args As ServerValidateEventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Try&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim num As Integer = Integer.Parse(args.Value)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = ((num mod 5) = 0)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch ex As Exception&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = false&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be divisible by 5&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnServerValidate=&quot;ValidateNumber&quot;&amp;gt;&amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet22&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (Page.IsValid) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID ENTRY!&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void ValidateNumber(object source, ServerValidateEventArgs args)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int num = int.Parse(args.Value);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = ((num%5) == 0);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch(Exception ex)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = false;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be even&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnServerValidate=&quot;ValidateNumber&quot;&amp;gt;&amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Performing custom server-side validation with the CustomValidator server controls requires that you use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;OnServerValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property instead of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; is used with the CustomValidator server control when working with client-side validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this case, you need to give the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;OnServerValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property a value that is equal to the name of the server-side function that you would write in one of the .NET-compliant languages.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Making Validation More Secure&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;If you are going to use the CustomValidator server control for client-side validation, you should also consider re-evaluating the user&#39;s input using a server-side validation function.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;It is not too hard for some people to post a form back to your server and bypass or fool the client-side validation. If you re-evaluate the input on the server, you can stop this from occurring, making your ASP.NET applications more secure.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using the CustomValidator server control to validate the Checkbox server control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;If you have been working through the examples so far in this article, note that there wasn&#39;t a validation server control in place that was able to validate the CheckBox server control. Don&#39;t be too worried. You can use the CustomValidator server control to work through this control. You can use it any time that a validation server control on your page is not using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ControlToValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. For an example of this, see Listing 16.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 16: Validating a check box&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet23&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub CustomValidator1_ServerValidate(source As Object, _&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args As ServerValidateEventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (CheckBox1.Checked = True)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Page.IsValid Then&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Thank you for your donation!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Check checkbox if you want to donate $10 &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CheckBox id=&quot;CheckBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Text=&quot;Donate $10&quot;&amp;gt;&amp;lt;/asp:CheckBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please donate $10&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnServerValidate=&quot;CustomValidator1_ServerValidate&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Submit&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet24&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; void CustomValidator1_ServerValidate(Object source,&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServerValidateEventArgs args) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (CheckBox1.Checked == true);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (Page.IsValid) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Thank you for your donation!&quot;; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Check checkbox if you want to donate $10 &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CheckBox id=&quot;CheckBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Text=&quot;Donate $10&quot;&amp;gt;&amp;lt;/asp:CheckBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please donate $10&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OnServerValidate=&quot;CustomValidator1_ServerValidate&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Submit&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Note that a CheckBox server control appears on the page. Also notice that there isn&#39;t a validation server control on the page that has this CheckBox server control tied to it via any property settings. Instead, a CustomValidator server control on the page references a server-side function called &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;CustomValidator1_ServerValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Within this server-side function, validation performed in the code checks whether the CheckBox server control&#39;s &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Checked&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property has a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; (meaning that it is checked). If the value of this property is &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, the CustomValidator server control is passed a &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value—meaning that the input passed the test.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CustomValidator server control enables you to do almost any type of validations that you can think of. This is a great control to use if you do any database validations on the input that is entered into a form by a user. This control can also apply any complicated logic that you want to include in the validation process.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The ValidationSummary Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The ValidationSummary server control works with all the validation server controls on the page. It takes all the error messages that the other validation controls send back to the page and puts them all in one spot (that you specify) on the page. These error messages can be displayed in a list, bulleted list, or paragraph.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Showing a Bulleted List of Errors&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can use the ValidationSummary server control in a number of ways, but the example in Listing 17 shows you how to use it in a simple manner. For this example, two text boxes on the page are associated with a RequiredFieldValidator control. When an error is triggered, not only does it display the error next to the text box itself, it also displays it in a summary at the bottom of the ASP.NET page.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 17: Having a summary of errors appear on the screen&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet25&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;First name &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your first name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;Last name &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox2&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your last name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox2&quot;&amp;gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Text=&quot;Submit&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ValidationSummary id=&quot;ValidationSummary1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; HeaderText=&quot;You received the following errors:&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:ValidationSummary&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using this kind of construct, when the validation server control is triggered, error messages similar to the ones shown in Figure 9 appear on the screen.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 9: Validation errors shown using the ValidationSummary server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By default, the ValidationSummary server control shows the errors in a bulleted list on the page using red text. You have the option to completely alter how output displays in the browser.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To change how the error messages are displayed, you can change the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DisplayMode&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property of the ValidationSummary control. The possible values of this control can be set to the following: &lt;/span&gt;&lt;/div&gt;&lt;ul type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l0 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;BulletList&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l0 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;List&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l0 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;SingleParagraph&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;If you use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;BulletList&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value for the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DisplayMode&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, it appears as shown in Figure 11. If you use List, it appears without bullets. If you use &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;SingleParagraph&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, the errors appear in a text area all on one line in a single paragraph.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Showing a Dialog Box Containing Error Notifications&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One flexible feature of the ValidationSummary server control is that you can easily show the ASP.NET page&#39;s errors in a pop-up dialog box. You have the option of showing the summary in the browser and the dialog box together, or just in the dialog box.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The property that controls whether the message appears in the browser is the&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; ShowSummary &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;property. To turn off the display of validation errors in the browser, set the value of the&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; ShowSummary &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;property to&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; False&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. To show validation errors in a dialog box, set the ValidationSummary control&#39;s&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; ShowMessageBox &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;property to&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; True &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;(see Listing 18).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 18: Showing errors in a dialog box&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet26&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:ValidationSummary id=&quot;ValidationSummary1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ShowMessageBox=&quot;True&quot; ShowSummary=&quot;False&quot;&amp;gt;&amp;lt;/asp:ValidationSummary&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;This code produces results similar to those in Figure 10.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 10: A dialog box showing the page&#39;s validation errors&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Understanding the Difference Between the ErrorMessage and Text Properties&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the examples shown so far using the ValidationSummary server control, the error messages were next to the items that were being validated (the RequiredFieldValidator server controls) and were displayed within the ValidationSummary server control. One ideal way of presenting this validation-error information is to have an asterisk (&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;) appear next to the HTML form fields in question, while the error messages stating what is wrong with the input appear in the list of errors shown within the ValidationSummary control.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To accomplish this, you use the specific validation controls—not the ValidationSummary server control itself. For instance, if there is a RequiredFieldValidator server control validating a text box, you construct this validation control as shown in Listing 19.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 19: Showing text differently than it is displayed in the ValidationSummary server control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet27&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your first name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;*&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Or:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet28&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your first name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; Text=&quot;*&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By constructing the page&#39;s validation server controls, as shown here, using different values for the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; properties, you get a result similar to that shown in Figure 11.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 11: Using different text for the validation error messages&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;When both the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; properties are used for the validation controls, the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is displayed in the ValidationSummary server control&#39;s listing of validation errors, and the value assigned to the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is displayed in the validation control itself.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;Conclusion&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can do a lot with validation, far more than this article explains. Validation controls make a developer&#39;s life a lot easier. (To develop the same type of functionality in the past, a developer had to sometimes go to extreme JavaScript-coding measures.)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The powerful thing about using these validation controls is that they are easy to implement. Modifying them is a piece of cake, so you can easily check for all sorts of parameters on the input generated from your forms.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation and Web controls make an outstanding combination for building smart forms.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;About the Author&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Bill Evjen is an active proponent of .NET technologies and community-based learning initiatives for .NET. He is a technical director for &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Reuters&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, the international news and financial services company based in St. Louis, Missouri. Bill is the founder and executive director of the&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;which represents more than 100,000 members worldwide. Bill is also an author and speaker and has written such books as &lt;i&gt;ASP.NET Professional Secrets&lt;/i&gt;, &lt;i&gt;XML Web Services for ASP.NET&lt;/i&gt;, &lt;i&gt;Web Services Enhancements&lt;/i&gt;, and the &lt;i&gt;Visual Basic .NET Bible&lt;/i&gt; (all from &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Wiley&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;© 2011 Microsoft. All rights reserved.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/2950336484466415855/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/validating-aspnet-server-controls-on_07.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/2950336484466415855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/2950336484466415855'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/validating-aspnet-server-controls-on_07.html' title='Validating ASP.NET Server Controls on Asp.Net !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-7045977235984112079</id><published>2011-12-07T08:42:00.001-08:00</published><updated>2011-12-07T08:42:01.441-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Asp.Net"/><category scheme="http://www.blogger.com/atom/ns#" term="Validating ASP.NET Server Controls"/><title type='text'>Validating ASP.NET Server Controls on Asp.Net !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 1;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 24pt;&quot;&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By Bill Evjen&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Reuters&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;December 2003&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Applies to:&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Microsoft® ASP.NET&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Microsoft Visual Basic® .NET&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Microsoft Visual C#® .NET&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Summary: &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Learn how to use all the available ASP.NET validation server controls that are at your disposal. This paper introduces these new controls and discusses tips and tricks on working with them in practical scenarios. (34 printed pages)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Introduction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Looking at Validation&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RequiredFieldValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CompareValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RangeValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RegularExpressionValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CustomValidator Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The ValidationSummary Control&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Conclusion&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;Introduction&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In your studies of ASP.NET, you might have been introduced to a number of different types of controls, whether HTML server controls or Web server controls. This paper focuses on a series of controls that stand out from the rest—&lt;i&gt;validation server controls&lt;/i&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation server controls are a series of controls that help you validate the data that the user enters into the other controls that are provided with ASP.NET. They determine whether the form can be processed based upon the rules that you define in the validation server controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;Looking at Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One of the most common elements of Web pages is a form in which the user can input data that is posted back to the server. These forms are made up of different types of HTML elements that are constructed using straight HTML, HTML server controls, or Web server controls. A variety of HTML elements, such as text boxes, check boxes, radio buttons, drop-down lists and more, can be used in forms.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Often when your ASP.NET applications are collecting information from a user, you want to ensure that the data that you collect is valid. Some users are not interested in spending enough time to enter the correct information into a form, and in some cases, users might even intentionally enter false information to gain access or get past a certain step in your application&#39;s workflow process.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One of the first steps is to understand what validating data means. Validating, in this case, does not mean that if John Doe types his name into the form field of a text box as Fred Doe the computer sends an alert to inform you that the data is untruthful. No, we still do not have the capability to find out whether a statement is true.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation is testing to determine whether the user entered &lt;i&gt;something&lt;/i&gt; into the field. After you determine that something was entered, you can then also check to see whether what was entered is a number or a character and if it is in the correct format. From there, you can compare user input in different fields or against values that might be held in other repositories, such as a database. You can check for many types of information, as you learn in the rest of this article.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Data collection on the Internet is one of its most important features, so you must make sure that the data you collect has value and meaning. You ensure this by eliminating any chance that the information collected does not abide by the rules you outline.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Understanding the Difference Between Server-Side and Client-Side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Many people new to ASP.NET don&#39;t know the difference between client-side and server-side validation. You must understand these two different ways of validating the data users input into a Web form.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;After the user enters data into a Web form, clicks the &lt;b&gt;Submit&lt;/b&gt; button, and sends the form data to the server as a request, you can perform server-side validation on the data. If the data is incorrect or not valid, you can send back a response stating this. If, however, when the user clicks the &lt;b&gt;Submit&lt;/b&gt; button, a scripting language that is part of the overall HTML page is initiated to check the validity of the data before it is sent to the server, this is client-side validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;It was a lot easier to understand the difference between these forms of validation when you coded Active Server Pages 3.0 because, as the programmer, you personally performed almost all data validation. You yourself either programmed it to be client-side or server-side.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;When you used server-side validation with ASP 3.0, if something the user entered was wrong, you could repost the form and ask the user to correct the information in that particular field of the form. Sometimes, you carried the correct input from the other fields back to the form page, and populated the fields for the users so they didn&#39;t have to re-enter the same information again. Some sites on the Internet don&#39;t carry this inputted information back to the form page, and the user is then required to enter all the information into the form a second time. Obviously, this may cause people to leave your site for another.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The bad thing about server-side validation is that it requires trips back and forth to the server. This takes a lot of resources and makes for a slower-paced form for the user. Nothing is more annoying to a user who is on a dial-up connection than clicking the &lt;b&gt;Submit&lt;/b&gt; button on the form and then waiting for 20 seconds to find out that they didn&#39;t enter their password correctly.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The other option for form validation is to put some client-side JavaScript or VBScript at the top of the ASP page that checks if the information in the fields is correct. This takes care of the problem of making unnecessary trips to the server, but it requires another language to learn and manage. JavaScript is a great language, but takes a lot of time to master, and there are always problems getting your JavaScript code to work on different browsers. Listing 1 shows you an example of using client-side JavaScript to perform form validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 1: Client-side JavaScript for form validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet0&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script language=&quot;javascript&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;!--&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Function CheckForm(form)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; for(var intCtr = 0; intCtr &amp;lt;= (form.elements.length - 5); ++intCtr)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var temp = form.elements[intCtr];&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(temp.type == &quot;text&quot; &amp;amp;&amp;amp; temp.value == &quot;&quot;)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(&quot;Please Enter All Information!&quot;);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp.focus();&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; return true;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;//--&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;This sample piece of JavaScript does some validation, but it doesn&#39;t check for all the in-formation that you might need on the form you are building. This piece of code determines only whether the user entered anything at all in all five fields within the form. It does not determine whether the user entered an actual e-mail address within the e-mail address text box, whether the user entered a number between two given numbers, or whether the password and the confirm password text boxes match. After awhile, you can see that you need many JavaScript functions to obtain the level of form validation required.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;.NET to the Rescue!&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Developers who used classic Active Server Pages 3.0 to develop Web pages might remember that they used to spend a considerable amount of their time developing validation mechanics in their pages. It was time consuming if you did it right. It was most efficient to do the validation of the form on the client-side to limit the number of requests and responses required to work through an application. As I stated, however, you were never quite sure if the requesting browser would understand the scripting code that you used for the validation. So, it was usually better, especially for critical Web applications, to bring the validation to the server.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;ASP.NET has changed this by giving you the capability to use the validation server controls that are provided with the other new controls at your disposal. What makes these validation server controls effective is that when an ASP.NET page containing these controls is requested, it is the ASP.NET engine that decides whether to perform the validation on the client or on the server depending on the browser that is making the request. Therefore, your page&#39;s functionality changes depending on the requesting browser—thus enabling you to make your Web pages the best they can possibly be—rather than dummying-down your Web applications for the lowest common denominator.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation server controls are the only type of ASP.NET server controls that also generate client-side script. All the other controls work with the idea of making postbacks to the server (a request to the server to get a response).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Presently, six different validation server controls are available for ASP.NET: &lt;/span&gt;&lt;/div&gt;&lt;ul type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RequiredFieldValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CompareValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RangeValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RegularExpressionValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CustomValidator&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l1 level1 lfo1; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;ValidationSummary&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can also customize validation for your own needs. Then, if there are any errors in the form data, these validation server controls enable you to customize the display of error information on the browser.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You place validation server controls on your page as you would any other type of controls. After the user submits the form, the user&#39;s form information is sent to the appropriate validation control, where it is evaluated. If the information doesn&#39;t validate, the control sets a page property that indicates this. After all the form information is sent to all the validation server controls, if one or more of the validation server controls cannot validate the information sent to it, the entire form input is found to be invalid, and the user is notified.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Table 1 describes each of the six validation server controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Table 1: Available validation server controls&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;mso-cellspacing: 1.5pt; mso-yfti-tbllook: 1184;&quot;&gt;&lt;tbody&gt;
&lt;tr style=&quot;mso-yfti-firstrow: yes; mso-yfti-irow: 0;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation   Server Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div align=&quot;center&quot; class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Description&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 1;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RequiredFieldValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Ensures that the user does not   skip a form entry field&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 2;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CompareValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Allows for comparisons between the   user&#39;s input and another item using a comparison operator (equals, greater   than, less than, and so on)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 3;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RangeValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Checks the user&#39;s input based upon   a lower- and upper-level range of numbers or characters&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 4;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;RegularExpressionValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Checks that the user&#39;s entry   matches a pattern defined by a regular expression. This is a good control to   use to check e-mail addresses and phone numbers&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 5;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;CustomValidator&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Checks the user&#39;s entry using   custom-coded validation logic&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr style=&quot;mso-yfti-irow: 6; mso-yfti-lastrow: yes;&quot;&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;ValidationSummary&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;padding: .75pt .75pt .75pt .75pt;&quot;&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Displays all the error messages   from the validators in one specific spot on the page&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Not all button clicks are equal&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Normally, in a series of HTML form elements, there is some sort of Button, ImageButton, or LinkButton control on the page that submits the form and causes the validation to initiate. This might not be the functionality that you are always looking for in your Web forms. You may not want each and every button on the ASP.NET page to initiate validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;For instance, you might have a Cancel or Reset button on the Web page. If the user clicks one of these buttons, you don&#39;t want that button click to validate the contents contained in the Web form.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To prevent this, you have to set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;CausesValidation&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property for the control to &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;False&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet1&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:Button id=&quot;Button1&quot; runat=&quot;server&quot; Text=&quot;Button&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; CausesValidation=&quot;False&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The RequiredFieldValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RequiredFieldValidator server control makes sure that the user enters something into the field that it is associated with in the form. You need to tie the RequiredFieldValidator to each control that is a required field in the form. Although this is the simplest of the validation server controls, you must understand certain things about it.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To see an example of using the RequiredFieldValidator server control, create a Web form that contains a TextBox server control and a Button server control. Next to the button, place a RequiredFieldValidator server control. Your ASP.NET page should look like the code illustrated in Listing 2.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 2: Using the RequiredFieldValidator control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet2&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Page is valid!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id=&quot;RequiredFieldValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Required!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet3&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Page is valid!&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; id=&quot;RequiredFieldValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Required!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Run this page and then omit putting a value in the text box. When you click the button, you get a result similar to that shown in Figure 1.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 1: Causing the RequiredFieldValidator server control to fire&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;There are a few things to be aware of when using the RequiredFieldValidator server control in your ASP.NET pages. First of all, the most important property of this validation control is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ControlToValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The value assigned to this control needs to be the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;id&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property for the control to which you want to link the RequiredFieldValidator control. You can link only one RequiredFieldValidator server control to any other server control on the page. For instance, if you have three required TextBox controls on your ASP.NET page, you need three separate RequiredFieldValidator controls to make sure that they are all required.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The second property of this control is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. This is the text that appears where the RequiredFieldValidator control is located on the ASP.NET page if the TextBox is left empty. Instead of using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, you can also use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet4&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Required!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Or you can use the following construct:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet5&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Required!&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;As you run this simple page, notice a few things. First of all, if you are running a client that is considered an upper-level browser (for example, Internet Explorer 4.0 or better), the code generated to perform the validation is client-side. To see this, right-click the page, and then click &lt;b&gt;View Source&lt;/b&gt;. You see JavaScript in the code of the page.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The JavaScript in the code of the page means that the required field checking against the text box on the page is done client-side. To test this, simply click the button on the page, and you see the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Required!&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; error message displayed. Next, enter a value in the TextBox control, and then press TAB. The RequiredFieldValidator server control is then triggered.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By default, red text is used for the error messages that are shown by these validation server controls. As with most of the ASP.NET server controls, however, you can change the style of the controls by changing the properties of the control in code or within the designer. For instance, you can apply a more complex style as illustrated here:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet6&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; BackColor=&quot;DarkGray&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; BorderColor=&quot;Black&quot; BorderStyle=&quot;Solid&quot; BorderWidth=&quot;1px&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ForeColor=&quot;White&quot; Font-Bold=&quot;True&quot; Font-Names=&quot;Verdana&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Font-Size=&quot;X-Small&quot;&amp;gt;&amp;amp;nbsp;Enter something&amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using code similar to the preceding, you can get a more elaborate result, as shown in Figure 2.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 2: A RequiredFieldValidator control with a little more style&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 5.0pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Note&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;The RequiredFieldValidation server control works with most HTML form elements except for check boxes. You cannot validate against the CheckBox or CheckBoxList server controls using the RequiredFieldValidator server control. Instead you need to use the CustomValidator server control. An example of this is shown later in this article.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Double-Checking Client-Side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One interesting point is that even though the form data is validated on the client (eliminating the need for additional requests to and responses from the server to validate the data), the data entered is re-verified on the server. After the data is checked on the client and found valid, it is rechecked on the server using the same validation rules. These are rules that you establish to ensure against some tricky programmer out there trying to bypass the validation process by posting the page to the server as if it passed validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Using the InitialValue Property with a TextBox Server Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Another property to be aware of when working with the RequiredFieldValidator server control is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. Instead of being empty, HTML form elements can be populated with default values. In this case, you expect the user to change the value in these elements.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;This situation is illustrated in the Listing 3, which shows a TextBox server control with an associated RequiredFieldValidator server control.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 3: A TextBox control with a default value&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet7&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;Hello&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please change value&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; InitialValue=&quot;Hello&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, the single text box has a default value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Hello&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. The value you place here can be from any source, even a dynamic source. There is also a RequiredFieldValidator server control that is assigned to validate this text box. In this case, you want the user to change the initial value of this control to something other than the default value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property —&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Hello&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. You can also populate the value of this property from a dynamic source, just as you can populate the TextBox server control from a dynamic source.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet8&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;RequiredFieldValidator1.InitialValue = some value&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Because of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, if the user tries to submit the form without changing the value in the text box, the RequiredFieldValidator control fires and the form does not post to the server. If the user changes the value in the text box and submits the form, this RequiredFieldValidator control does not fire and the form is posted.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Requiring a Value Change and Disallowing Empty Values at the Same Time&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;When using the RequiredFieldValidator control against a text-based control such as a TextBox control, you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The form validation fails if the value contained in the associated control is not changed from this value. If you use this kind of construct, however, the user can change the value of the text box in any manner to get past the validation. He or she can even empty the text box of any value, and it still passes the validation process.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In some situations, you can require the user not only to change the initial value of the text box, but also to input some value so that it is not empty. To do this, use two RequiredFieldValidator server controls. The first RequiredFieldValidator server control uses the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to ensure that the user changes the default value in the text box that the control is associated with. The second RequiredFieldValidator control validates that the same text box is not left empty, as illustrated in Listing 4.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 4: A single TextBox control with two RequiredFieldValidator controls&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet9&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;Hello&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please change value&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; InitialValue=&quot;Hello&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Do not leave empty&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Using the InitialValue Property with a DropDownList Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;A good way of using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is with the DropDownList server control. For instance, a drop-down list might have a default value that is not an empty value (by default, some text appears in it). An example of a drop-down list with the RequiredFieldValidator that uses the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;InitialValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is illustrated in Listing 5.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 5: Using the RequiredFieldValidator server control with the Drop-DownList server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet10&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:DropDownList id=&quot;DropDownList1&quot; runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem Selected=&quot;True&quot;&amp;gt;Select a profession&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Programmer&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Lawyer&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Doctor&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ListItem&amp;gt;Artist&amp;lt;/asp:ListItem&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:DropDownList&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please make a selection&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;DropDownList1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; InitialValue=&quot;Select a profession&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using this kind of construct enables you to place a description of the actions required in the drop-down list and also requires the user to make a selection from the choices. To get past the validation process, the user must make a selection other than the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Select a profession&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; choice. If the user doesn&#39;t enter a profession, an error message is returned (see Figure 3). It takes a lot of code to write your own JavaScript function for this procedure, and that JavaScript also has to be browser-independent. With ASP.NET, the RequiredFieldValidator server control takes care of that.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 3: Validation error based upon the DropDownList control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The CompareValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CompareValidator server control compares the value entered into the form field to another field, a database value, or other value that you specify. When comparing against data types, you just set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Operator&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;—&lt;/span&gt;&lt;i&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DataTypeCheck&lt;/span&gt;&lt;/i&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. After that is done, you can set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; attribute to &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Double&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Date&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, or &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Currency&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; in the CompareValidator control to make sure that the user&#39;s input into the field is the specified type.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Validating Against Other Controls on the Web Form&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using the CompareValidator server control, you can make comparisons between different controls within a form on your ASP.NET page. For example, if you want to compare what the user enters in the &lt;b&gt;Password&lt;/b&gt; field to the entry in the &lt;b&gt;Confirm Password&lt;/b&gt; field to see whether they are the same, you can use the CompareValidator server control. Using these two fields is a common practice when a form asks for a password. It ensures that the user doesn&#39;t mistype the password (see Listing 6).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 6: Using the CompareValidator server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet11&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Passwords match&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Passwords do not match!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ControlToValidate=&quot;TextBox2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToCompare=&quot;TextBox1&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Confirm Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox2&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Login&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet12&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Passwords match&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Passwords do not match!&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToCompare=&quot;TextBox1&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Confirm Password&amp;lt;br&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox2&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TextMode=&quot;Password&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Login&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, the Web form uses two TextBox server controls. One is for the user to enter the password, and the second TextBox control requires the user to enter the password again to ensure they didn&#39;t mistype the original. By using the CompareValidator server control, you guarantee that they are equal strings. If they are not equal, the page returns an error message (see Figure 4). If they are equal, your page submits as valid.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 4: In this example, the user mistyped the password and got an error message.&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Validating Against Constants&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can also use the CompareValidator server control to make sure that the value typed into the form field by a user is valid when compared against a constant, some dynamic value that you retrieve, or that it adheres to a specific data type. Listing 7 shows an example of this.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 7: Checking to make sure value entered is of a specific data type&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet13&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Age: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot; MaxLength=&quot;3&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;You must enter a number&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; Type=&quot;Integer&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Operator=&quot;DataTypeCheck&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, the user must enter an integer in the text box; otherwise, the CompareValidator server control fires and displays an error message on the page. By giving the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property of the CompareValidator server control a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, you ensure that the value entered in the text box conforms to this .NET Framework data type.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You also have the option of not only comparing values against specific data types, but also ensuring that values are valid when compared against certain constants (see Listing 8).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 8: Comparing values against constants for validity&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet14&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Age: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:CompareValidator id=&quot;CompareValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; Operator=&quot;GreaterThan&quot; ValueToCompare=&quot;18&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; ErrorMessage=&quot;You must be older than &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; 18 to join&quot; Type=&quot;Integer&quot;&amp;gt;&amp;lt;/asp:CompareValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this case, a few checks are made against any value that the user types in the text box. The first is based on the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property in the CompareValidator server control. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property has the value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, therefore any value placed in the text box needs to conform to this .NET Framework data type. If the user enters a &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;string&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; into the text box, the form submission is invalid. The next property is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Operator&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. This property has a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;GreaterThan&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, meaning that for the form submission to be valid, the value entered in the text box has to be greater than the value that is assigned to the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ValueToCompare&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. For this CompareValidator server control, the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ValueToCompare&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property has a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;18&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. This means that the value entered in the text box on the page must be an &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; greater than &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;18&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. If it does not meet these criteria, the value is considered invalid, and the CompareValidator server control displays an error message in the browser.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the situation shown in Listing 8, you are not comparing two fields in the form; instead, you are comparing one field against a value that you have specified in code. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Operator&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property can contain one of the following values: &lt;/span&gt;&lt;/div&gt;&lt;ul type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Equal&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;NotEqual&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;GreaterThan&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;GreaterThanEqual&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;LessThan&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;LessThanEqual&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l2 level1 lfo2; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DataTypeCheck&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The RangeValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RangeValidator server control is similar to the CompareValidator server control, but the RangeValidator server control compares what is entered into the form field with two values and makes sure that what was entered by the user is between these two specified values.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;For instance, imagine that you have a text box where you want end users to enter their ages. Instead of being greater than or less than a specific constant, you want the values entered to be between a specific range of numbers. For this, you use the RangeValidator server control, as illustrated in Listing 9.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 9: Using the RangeValidator server control to work with a range of numbers&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet15&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Age: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RangeValidator id=&quot;RangeValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; Type=&quot;Integer&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;You must be between 30 and 40&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; MaximumValue=&quot;40&quot; MinimumValue=&quot;30&quot;&amp;gt;&amp;lt;/asp:RangeValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this case, the user should enter a value between &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;30&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;40&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; in the text box. If some number is entered that is outside of this range, the RangeValidator server control fires an error message and considers the form submission invalid.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property enables you to make comparisons against many different .NET Framework types, such as &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Integer&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Double&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Date&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Currency&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. These choices enable you to do a number of range comparisons. For instance, you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Currency&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value in the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to retrieve monetary-value entries that are within a certain range. You can also use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Date&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value for the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to make sure that the entry is between specific date ranges.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Also, just as you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; data type in the CompareValidator server control, you can use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; data type with the RangeValidator server control to make sure that the value entered falls within a specific range of characters. For example, if the user is entering her last name, and you want only people with last names starting with M and P to proceed, you can easily do this by using the RangeValidator server control, as illustrated in Listing 10.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 10: Comparing an entry to a range of characters&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet16&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Last name: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RangeValidator id=&quot;RangeValidator1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;Your last name needs to be between M and P&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; MaximumValue=&quot;Q&quot; MinimumValue=&quot;M&quot;&amp;gt;&amp;lt;/asp:RangeValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the example in Listing 10, the value is being checked against a range that is specified by using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;MaximumValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;MinimumValue&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; properties. Notice, in this example, that the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is not specified. In this case, it doesn&#39;t need to be specified because the default value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Type&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. If not specified, it is considered to have the value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The RegularExpressionValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The RegularExpressionValidator server control is a validation control that enables you to check the user&#39;s input based on a pattern defined by a regular expression. This is a great control to check whether the user has entered a valid e-mail address or telephone number. In the past, these kinds of validations took a considerable amount of JavaScript coding. The RegularExpressionValidator control with ASP.NET saves coding time.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the Properties window for the RegularExpressionValidator server control, click the button in the ValidationExpression box, and Visual Studio.NET provides you with a short list of expressions to use in your form via the Regular Expression Editor. However, you are not limited to these regular expressions in your ASP.NET applications. The list of prepared expressions is shown in Figure 5.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAWIAAADlCAIAAADm/Gr5AAAgAElEQVR4nOy9z28cx7UvPuXHIYYD01BsgDsb3mkXwqw2yLsJEGSRlXOfV1yFkQPO0fwH2uQl1verda6zCacUINDFvTKghRJf+W4vLSIQqVGVL+YBdxojeBwoE0yze+hpTe8IDLv4Fp/qmpofpCRaMmWliYNCs1ldXd3s86lzTp0fheP8J//Jf/KfU38K5z2B/Cf/yX9e9h8DE2l6lKZHw8MYtLh4gTHOGJ+bK87NFYvFEg6enuwlEwd5e7Y3+fTjvOh5fh/f4StP8wsLzvG8++vMf9/EGfQvFktLS0vDwziJE6BBmh7NgIk46b/x5luMccZohVSF5EotnUmVms4pp5xeEgJXLovUHj8rcdKcNBCnXC7HgwSYMAYTECIAELyqVkitVHWhogtiRGe7/be59tUj933m9PR07v+4l4ROfz/Tvz5xQKADJ71S1dlxA5qE1moGTBSLJcY4MKJQkYWKzimnnL4XZLndPblWOcafcGz74Ayr7BUqcuIq/Pre5b3ia/9ULJYmYSKJk6WlJc4FhAgM8TTTOomWN5/cJ6eccnouNM2hK6RWSLHKHnjZbd2D17y9As/EAq5e8/YYb3CuOBflcnl4GI/BxNxckTHOuSpUZXaZNGJFVeLXyeOM7C1PRZYZFz5Xetb7vuj+z4fwz7b03uU9HJzU//l9ds82n4njnL5jYpW90QfJlRAqigIYF4zZcZDAJGmNDnbXAge9/Z4QqsCVx3WBK85Fga3NzRXHYKJcLhc4ca4KXK2QaVdInSQUPIUgJBk1WGUvQ5YXLXe9bPCRU07fJclCBeytrl9v+H5LCqGINJEiksQt6Q8/dH+VxBXninNFlEpFQha4wjiFwq/L5fIYTMwvLHAu0B8YwYEXz85OjBpuz4lfXxDhLtPtefXPKacXQSdKE9QocMWrinM1PIylEFqQS0qQohFpQx7IgkU8SIAAr3l7nItisTSpdNg/Y0KGGSp7hYpm1OBVZYUIRg17PH1gf4VUUqhICLGAHl5Vpg/Em/HnL1RkNpTkpDElj+vlTc2oUahoeznnioNRueJmKEO4kcf1CmG/Ro6eyFGaOObG1XuX9woVmY0glzc15+YuuPU4ZkvnQBaq0vThCm9mhZTbIdP0lL0ppmc1OyMuVqV5Y1k3vE/7HaA/5Dv7Ap0/mdni7eF/h79yrvD2eGYwwgM6Lzyn7z3Zj7nAVZoeKUG6Jgz96qqBCWHQQRGpyrImTxPpDz90YWJ4GBccmJhUOiZgwuBTRRYqGkZNXlX21+yDNt+c4duq+fLGlFuu7JfNSS+/LzMu0ryqDHdVpWVvwwBVA1LvXd7LcGGEoxYmXJVsJPtUpdWbChXJqWGEKDulbHBgwQqptU1VqMjsAd0bSU6NFVKZmWeEAg5LjzjZvI2Mny1Evnd5D7xasLYDFyZ4wxzz0eNjwlginK/BPCmOedU+l8b8xwzPVVngivGGiz52bpgezwWi7yFZXR7/bnycnCtGjRFMEGkgxa/+j64JiBL6V//HaBlEmjwoI1YlUZwrXkjTI/BLgSvmnQwT5uOuAib0Cqnl96WFADBDwVg39fKmfu/yXqEqHQY2UkOhIjk1TAfLAFaJqmbCheHeCZOHNF4bDuFbhwACdl1+31pbdXZTI+yMhJqq8rj2uBkcd1khVahKY6/FfCrmZKGiOW/wjJ0MS2fsbV5C1cgymYxjJJoMqszCbu5YVc6TTgpc5trsVWNY2ALtm3EFmbVNIyjZyXDS9iU4psfRLbIO4+9/Uj7K6ftJGc8uvy8LrjRBmbrxq6uD5u5Q71ldQxLX5OkPP1REw8NYSyGJK15QnNc4A0xgv4N5U0pHsVhyYWJt04gAUmvroCkPdIXMImxF4pESkQkFa5uGW4BzRlmwTJJ9svJAJ3EC1aAA3BkzdsqJ/qPllxq8quSBdg22nz4Y4KasssdJM97IpiTtgl+oSLOTzI3IYyUmd4aveXv2uYzVt5rN0GXy6kh+EUqn6VGF5PL7RolYIYV74VnWKsdW+pjkUhiDqjpO+tbsHA+STx8MAB+A1EJVVqSWWguhPK6F0vHjpEKS8YbB3DE4yIQmIx6Ov0loOnxMOcrp+0GZ1swyMXlkcaxIztVr3l6aHkniUDT0r/7PcdqA82SGFB4MljiptVKVZcW5pBFMQA49TZqwSgfYRmqtlGCMOBfyQAe9XoXGQGEGTW5tZFpAxl0WJoKwtfy+wZ3C+GoMPIPGnr0jzckMzknHj5M7dz7nTLDCVc4E8wTnxhIBjHA4QY8t5tzICIAD90F4VVnVY4KZM5E+e0D7jFVZqMib9Th+nFgrwPTlY+JDVY4Wea4gF3DS8SC5fesTzqhQ+DXnxLnINDJpQLmWDg/jGgnOVUXqKIqIiwJXQunefq/iSXsvA5RccXJ8bKpyZM2pKhd5c/p+kfnGqtJFClbZ47wBaQIwoX91Vf/qqhJkY7WsioEFyZ4Bdrgw8Zq3xzxRmj/BhAnWeu/ynoGJA51Kxbla21QVqYeHccWTWIdhdHDXXjCk+bIzs6IVj/FRWnlEaq3laG+lYAT7Brgdx2teHeaM9y7vZZ97o1CRK1WdxMmfP/tP2ESxsBubZbaJO6b7vG+9zeSIM6tqbXO09Tu5v2NAJ5Masl9HegRpqDMGR7hgTID58VfzyHghVcl4w3oWmGmPNAJZqEgDfNAp+EiH4lWF91CROk2PalwYywIXrHCVV9XNehwPEqsrGRwkYzrFa1nbVDCRWANq9jjn/9Hn9Cw0thiPttu4gjWdW5gYbWeQlR2AC4PmfRwf//M/S+Lay3Rmzl1pgnM1qXSUy2XHrmb3CLTUBiYKFe3CRJW+jJN+mh4lcSKVhhUQ37E8MKqKFHKFlDzQYeAvvy8LFV2p6XiQCFKctDzIYIK0UFpqPTyM5YEWwvCqPNDyQEulcQvwnl0b5YG+ceOmERO4YpU9DIKNXxIyiftSmZ5WN4HQjqsgAuCv6LlCCuFxUms81JpXl8pcnsQJIEkeaOupUnEmv0mN17w9LiQ6p+nRzXqMe+FZcL7xzXFNaIhRdosErxowAVCzX4OdP+5SIwHtI02PqvSlVDp+nOC/HkVRgatKTcsDDS8aTMDj2r5MvGSeGUdPdq+aTS+6/3kz4ctPs9+Yx3UGE400PRptZNitjQwp8C1prYwbhcex0wELhbVNFLha8+qTSsf8wgIf7VBqV+kAMxeqsqb1oHmfM8GrKomT7bvbnNMmNYaH8fXrDRIyfpxIIQqchFDxIJFCcq4AB/goScg0PaqRYLwhD/SguWs3C5knCpxu1uPefq9CcoVU/DiJHyc1EsTFxsZH47ueEmoVHlsIsy8jpJQHukJaHujefo8zAuf/+bP/5Iw4o+0vduLHSe3ycaEipdZJnBCJjY2PiMQKKan19hc7jHMikcQJtpPS9KhGxBkJoZa9Gs4QEed0/XoDziY36/Fx2lj2asub2gxSuPrHf/234WFcExqQ9z+th8QF4xwcu5nJOPb/ncQJnmh4GJMwf6ppLbUmTqxwlYSMk36NBM7Hg4S4mXYY+MSowIlTQx7o7bvbjJEQKokT2DLipB8PkmvXrhEXRALTPsWhPoeJl5VmvzePa1bZ87hefl8OD2O7o2GwgLz0f3/gIgW0DGCE4gW7ITohTZy801GRBceehxUMNGjeZ55gvEFSQvqFfCu1rtfrQunhYQxteaWWJnEiL6vXvL14kAAORto1Fxh50NwlLgoVzYXE7MG64AQIMswTHteveXuMGq5zBHxIYJVghaujtTebMOcE0TpNj6QATum1ynE8SKRwxmcCgj2XWmtVI+FxzasqTvq+36qQxFpd8Y6hWEFYGB7GVfrSKFkVXdPm2Y1eQMIoVgc6lcrjBm1hNOFZH/sPxgHmyQpXC5zw1PYk58KxTRDuqLWqeVDf1KC5W/FkoSorNY03DMsOXjImMHpY19J5Irt+P+jZYejZxnlesPgcx1+pasc6bsjdGcyUDs/aHSBQ4LtN4sRqH9rjmhc0L0DvcG0ToBPdqyZh4kAPmveXvZo80ForGA5g2B8hk1b1er1S04AGXlVc/vdx2gC3WKkBtnqw4krVwATnwmCKkAVOYEIXRzgXnPTkdsmIf9TEefDJtWvXYClYqaVSa/SExGFQwzG7FCp6hYzlxWgTj5PhYbx99y5keETUdjqdCmlOmjK1Ih4km1VpmbbiSQxCjAoZyPb9ewWuABPYdODS6A6YtoEJoYeH8c4XO2tenZPmVbVWOV4WeDNizau7F3p8dEfnRSlOGm/4N+w39t+XSoUJ2IcdGZKenZ1yejlpgjUUN6oEdkBhxTQmAiGO00aaHiVxP/3fH2iPK16ATOFuiELveAZpAp/gskihwy9v6mzNJOYJxkSBE2OiUJFQfY0iLQTzfl+YZd2ocQEZpO/f41zBYAFMEUrHg+QBXYc+3/fvASbsKzBmRdJJnGx/sWNhAudXamkS960m4nFdEFpqLYVcqWqIOZgbFliMjxG4xDSowIkVrnIuODPi0rJXAzRIldlouSIhh4exVLowDhPmWciINi5MwEDD7Uvg2Z5rRRcqengYwzYxev9Cp+lRvV63lh1ciA1RyC94k3jDK1VtZSKMmcTJDJjI0eGVo2mYyNQNY5WAEKGM2yXZ/FTZNkfBwoTHzTYZ443STJhg3GzmWd/KbMkVhYr5NIVQnHSaHvX9eytkDGYV0uDA7S92GCPmCc6MebKWwcEKKYxQgyEgE08qNSOEV8g4IDyg61ZOXn5/5EZtX0QmI8jl9yXckLE1AxsBcSEPdKfTqZCEFUMKsykrD3QUBcQJVr2+f4/zhk3AEz9OoCNUaloqDdlBKCMHJrHZiRBKFyq6QhrYjDejtSIuVmqpPNB3t7/g1BBKR1FUI2FhYgwrSVjIQxsnfQAfHLesbSiJE2wP2RflcX2zHluYEEpD6YCxIx4k23fv4l9jN1AB94CbaZE1p+87zYQJVVnWH35ojQbH//zPSpg4DmBHmh4N9Z4krnkBSJGmR4WKXn7fOAdPbogWiyV8Q/AOcJUOuwrB6g7zvif+bxInwKQbf/x3zhUXxi5g7fwPrutCRePjxhlEsxIJXlVABCEUp8bNemx9iuJBcufO58ubuvHNcb1eX/Pq41EVulDRyyKduJdUGjssRIIzAUNjFEXLmxrvwnQ7MB0grdTrdUdRN9oESAjFvN9zaoBR0/QoDJucCxgpIbPFg4RzYrzh2mXc573xx3/nzFyiVMPChN3usa96pZZGUeSG+t6sx8ubo50ODJimR0RGYwqDFiw7uCOmtLypSUjzth8nW1tbnBnRqV6vG/MKTX5YOb0ahP/phDShpRgexvpXV43ggE0Qz3hY6ZqwFgqjdFSyYIJp24Txwqxos9MxsojIQuHXxqmxoguZg0ChojkJ5hnipAsV+QfZMO4DXEitvm4/MrPngnPoJgTHIQgIy16NFa6aRDie4JD2SRQ4wcuLZ1bSqW8avt7ECleZJwqFXxcKv+bUgBKEWCzckZPu7few/wInMVa4WrEupNn49i1jSoXCr/FQHLutHhzMjE2Uk/2VrGmDc1Eo/Hf2vMpODJOx9ypU4OYkGBuTJjAIzLGwYtqdnbVNhW0gI6ZxKBQSD2sG4aLAqcDJ3gKdYQpd3tSMxGgClbH75vSKEWDCIoVRPSrLNsQL4oPdBAFGKAcmzKYBb5xgm6joCduEPbaSKiejYqxUtfuhw2AhhKqQhLlh0NzlGb5MGHInOKSQRZFxaticfIWKXNucoUuPuDrzMrSt3ce1d3RNmLivG+pq3UNAa5XjtcqxFfjtIBP/hulHmFifZ1qt1yrH1ka9tjmGfRPvYaVqHsTxgBoNNXNuGNm1gWeXS6d/g0/9W3N6lciRJgoWKczeZyZHSOKSGLwktCWPT8DEqTsdFT0NE9OfqXPQKIiR6GHl7TjpS6UZM4vthDI8zR4u687uMM5vE38FWdgaI2PCFKPYk1lv9olvfwIvVmqpC0krVV0QJ48glDvO+H2n3/bYM07bEaYNuhPzdLtZU6h74fS2UU6vBuFrGR7GytgauAUL59fCSeTCBGwTk9KEyXD31BOaWDAtLXs1q4nAOfJ8XxzPQicKuZE/p1eX3OWhJrRSDUVU4+yJBHT4uFCoEaVSVWqaZ1EIy+/LE5UOVtlzspWcZbqIhnxJGDIXs3P6R6BR+DK2FIWKosgNoX4iSaWRC5Pxho0qmlQ64KyN+9kNyBkyfE455fTykc1vYomTgx2zaKWqLRyYa514CM4V52J+YWEWTGShYjaI3SRumj446fYmyFoXKpJR4zUPKXONGPPd00lTPbf5nPTeHA/Zp6KXbZyczpW4y61I9VIxCfVntvbAZHLIPC8t7zPeWPPqjPEZEaKICseVnCue5XH8vtOaVz/3Obyck8nplaE1rw6GxQd2+mdmU+MhR4F7IedqbdNkM5iEidJ8iVODV1W73e50Ogf7QRRFSZx0TvgJwlYQNifabuDjr2H4MAibYeAHYTMMm0HY7AZ+4Bx8l2120ArDZhj4YeBjwuc1JTMZp+0+Yxue0J7XOHl77m2n0wHnft1+1Ol0oigKwlYURWHYNBT4ozZsBmHrYD/o7feCsNVut8GkYdjEtTvtHc4VY6LwPps0YSJjShRFYfYpdwM/Ovkn6PWyNrDHYcYMIVpDra4zJlr3zIs7tvPEc1nImNl+B1M65X3mP/nPmX/As2C0IFsOJz6/iU89MItlq7ffi6LIMmlvv9fb7wEmZm2IkuZcRVHQdW5wCoUntNOUxP1T+r/QNpyasH2P5zUl++9022elMPC7QWuqPbdxcnoZqO/f6wZ+b7/37Ne2gl6vG/hDvYcPgJ+UWRt2R3tlpjWctvDOJBeu3DYcidxG0IiiqJtxjhXIQ4fcX4OwebAfuD3d/k98Ec/0CN89PauQ+bKNk7cvQ3v6rzP/NH0MlHk+MPGsrdVBgrAZBi0rHbnqOs4MD2OrJ2dXtTIBaQKGmmHg2/7n/k/K27z9vrfdbPE+H5jI9CVz7KpPY1YW89cWzsdJ3w4C1AgcM4ztf+4vN2/z9tVou+cOE+PDNq0oEYYPu9YMO66VuAcQQ8b6ZyYGVw15Gd513ubt97ft7feCsHmO0kQr0zjGDArYQIXxLMw2DkPHyjgBK9iOxTjTG415m7d5e+a2e+7ShDXpg/O1VlqrOOkDvayM0M00kcA5DoMW+ifx7P656pG3efvt224GE2te/TxMmJkoAaFAazXUe4PmbrvdjqLgYD+wTlm4tbVf4Awwou/fO7n/+b/ivM3b73vbPV9pIoqiCbbv+/eEoDt3Pm+323HSn/BWhL0zzC7RWg2au6f0P/f3m7d5+2q0T9gQRcKoMX8kYyNoAWD6/r0oioSgYrFUWpifmytWSColOBfwFdVadQ0gBfJAdwN/8PAvff9emDl+4CAIm77fRN0hIVS73e779zDFJE4wDnoCTaRW8CcV5JGQ1jlKS8EZLy3Ml+aKpYV5zqnT6XQDP4qir9uPAC5h4Hd7Qd+/B19MzGHQ3A2DVqfTSeJ+KpVVgv7697/19ntwMAsDX2sBF7dBc7cb+EoQ5+Lr9iO8hyiK8CzdwI+TfhQFg+Yu/hSEzb5/L4n77XY7fpy02+0gbA6auzJ7Py/D15C3eTvddp8oTaxVjmfAhDEZGuvA7VufrK+v+37LuIiGTS3F6upqy3+IRNVBaCyUDrck1n07iZNu4IMVB837YHudoUAY+Af7gdZq0Lz/17//LR4kYdgcNHeTuN8NWmHQQn/YI6Io0FLYybTb7SiKgDKuobS338P8O51OFAVAqygK0A1vBCS1Qre+f2/Q3EUFwN5+b9DcDcJmFAWpVI/aX0VRBDRst9u4C9L5BWEzTY8wFMp84OTBfhAPkiBs7Xy1jYNz/xTyNm+fCBMn2iZmShPgJasFKEFXrlwJsxAvrVWNs8XFC/ML85yEUoIzNjdXfOPNt4hEp9NRSqyurq6urpbL5R//5EdKNbRWRLxcLnPGSgvzpBpKCb7yw/mFec4YJxEGLSmJc/I44ys/VKpRI5pfmMclJKQVSZQSxOl/Wg+xM9Jut2uccRKdTgcjCEF85YfvvP3u3FyRM7bT3tGSVldXf/bBh5zx7fa2rPEfvLlYmiuiGqCWwuNsbq44N1ckIZUSxOyvQgsqcAIeXb7+/vzCQmlhnogGzV0pqcDJ46xcLnNO2+1tPNTi4gUM1ffvCcE5iZfhU8jbvH0iTDyjNBE2v24/Gh7GQdiCdLC6ujo3V/yPO3/qdDohJH9OkK6DsNlut4eHcUOJH//kRztf7EhJjHEhZafTqREJoZQgIur793r7PUGeECoIW4hLGzTvE/eElLhKqcaj9lfAgr5/L076rtIRRZFSgjFeeN9w8tbWlpaCGL/836LGGQmppWCcg7ElcRJC1niBk5AyDJtS0tbWFsSiq//fa0IozAcwtLW1hdv19nuD5n0SEjARRYGU5BENmvejKMIlssbfefvder3e8n1cJYghg9CguSuE6ga+IC+Hibx9ydsnw8RJtonhYfyo/VU38K3JoNPpQCLYrBrbRBQF0NUFeeVyubQwXy6XhZRaEucEhULWOBeyUflfUDQ6nY4gRkIO9R6uArfjqgInYAf4DXcX5JGUUGHa7baWgoh2vtpGiFt3ZLBgnETfv6ey9T9O+rLGOQktiXPRbrd7+z1BrFwuF4ulubliuVwmErLGITjgGSFrEAmtlTzQsE3IAy2zaff2e1JSNixtt7eDXg+PqQQVi6Vr167hKcIM2l6GTyFv8/aJMHGi0jFTmsA1iDOFoWHQ3I2TvtZKSuJcACa223dhO/CIkjjpBi3IBVoS88TX7UfdDCYkMZJSa+X7TUmcpBTEWOVyEieD5v0akfhyS0pi3u9bLb8b+JKYkLIb+EHYBKxghnHSh2bh+00E0mLphqbASARhU2Zw09vvSbnCqwoAZAyigguhUOyn3W6jjlkY+ELwubkiIwFDBrBj+XINzyu1EsT+IBt4RQYmBHFOsG7gMfHelaC5uSL0oG7gw6x77p9C3ubtE2Hi2aQJ2CaMfqEVBAr8eufO50RCSrp0acP3m8PDWBD7jzt/SuLk7t3/MjAhDKNaaQKruu8340FCHuNCSuI3btyMogBKhJUmgE2yxonoYD8IwpYgZqUJ6Dsbl37u+yYqzEj43PuDbAju3fjjvwMm4sdJGPhEnIQEssCoeXx9hZPYbm8ncV9KIikVkTzQRiIg8fHHv75Zj6MoAhYAJsyvnKRWYeAT96CP4Ex3hIYcVRG1FGubqt1uQ+nIYSJvX+b2yTAxU5oIwhZS3MDfSQiCiH7h9cX19fXt9nbfv0ecisXS+vq6lmJpaWl+YcEjcmECC74SREJoKS5tbBTYGmfM44yk1FKU5kuMcY8zwT0yqopo+WYaxD2jF3hsekO0XC6X5ktzc8Uf/+RHxL0VIcLsTySotDBfWphfWlpaX1/v9gJwOPL8DPWeEPyNN9+aX1hYWlqCiQGKD9AKv2KEm/VYSmKekQuIOGN8bq5IRO12WwuC9BGETTymrJkOpfnSzXocjmwTuYtH3r68bffMOx1J3Ee0xfAw9lu+9bkKw2YUBV+3H8VJP9s0df2m3SDxU3LPfdsEdna3tRs427Ra2Q2IxjfHMK/ikpMCzJ7YTvd8Lo+Qt3n7XBhh5jd50iWWzaf/1O0F3TPsdMC5CF5J2C+cX5jHqjs3V/Q4q9fr8cDwYXeGUN20xzMPJvq7NN1n5iBBFmYO7QZ/gp3CI2r5D+35cGrwiVuffsdT5pAf58fneDyTg075tuOkbyIwbc7ajDvOtNNhIrVaSADj+y03XjMM/JbvDw/jrnOncyE7H3h5BJlAAaMJ9Kau8yLOcao55fRCqft0fYKwZYMewsAPwpGNr/usOx2jyG4s2hjUCA6trhMVDqfJ7lMIPC+oxczhdhlmmR2hg7hyTRg2EWN6LpPM27x9Qe3EwemdD/aDMEMHixr401mkiW4W05nE/SBsISU/3KKz0ZvxIEniZJRKeyLB1HfTZpOBNNF1XkE4mlXLei5819PL27z9DtsgY4pT+CVwylB0s/PdJ4Z+zZQmkjjBynz71idbW1t/+vzPd+58juPbt3772a1/uX3rt7dv/fb2rU9u3/rkzp3P7fE4/fa7an87cUdMCe2NGzfv3Pn8P+786bNbvzun6Z2hPZ1ehhnm7cvTPu3nsbW1Va/Xh4dxFAVhprB3HdvEs+10YFk+2A9u3/otEV25coWIpg+uXLliz5zLj52G+6v7VzvD853ns/5cOeHnvOeV/7ykP0/5hfzm6seAifhxAjdCK1acRZoIMzH+s1u/+83Vj5M4GR7Gz1Tp+Dum4WHs0kkdzn2eOeX0HCmJk2fqH4YPwQihs1nxVDBxojQRNoOwdeOP/05Ew8NYazXzxpb3JpjQ/XXi2uFhfJw2pp/TvQTHE2PGg+Q4bQwP43iQTPQ5aRozO0x0nj5zyqMBMe387aNNj3nSfHLK6XlRFEVpeiQPtDzQUk3Spw8GIKm0PNBpetRut/EBuxpHeGZpwlglA//2rd9euXIlTY+Ges9O7pRPf+aiPfOkloJISK3RAZzvjm/PINabc9M5PZknXTxy7xg/TqbnEyd9OzGtlQs9aQYH6Sx8GR7GWorlyzUkp3CnanvGSf/0F5VTTt+eXJhofHNs8MKihoMdrZafpke+38Rnn2WffGqYOEmawCi3b31CRGl6pJTgnOAfXVqYZ4yCsOnOeKY0cdLanqZHWivOxQSC4HjQvM8Zv/D64txc8eLFi1EUaSl4VQEmIIA8UWqYJgsWiHlHXAb69/17RKK335uY5MSBlX0Gzfuci3iQAA5mvoF0Cj5yyun5UtDrpemRQQRXphiXL27WY6l0mh4p1UjifpoeWVHgW0kTdtcEJsw0PRo07xMnO79TVIxTAMI92ffvER9JE/a81kwMNAgAACAASURBVEpLUfFkPEiGhzFCUSFNADun6STd4STIGB7GWgvOiYh/+mAwPIwHzfucE4Sa03UZI3040k0YPnzKN5BTTs+XjDShThAiDvSnDwbAiHq9nqZH23fv4pJsT7RlYeKMXpjwWbx965OPNi6lhqvJXTzB50QcDBYGLY+z4mv/xBiv1+tSC/wVyR3AjUHY5NxEkV27do2TIKLFxQvlcrkmRgqFloK4wNKtteKcGkoQCRJUmi+98eZbiAQfNO8zxovF0urqaqfTOU4bnBMRzS8slOaKN+ux1iqVClkw5uaKnz4YpC6fI+8WiTRj+532DpGIogjAQVkH4h6CxIh4sVgSUuLZf/yTH5XmS++8/W6GNbvvvP3u/MI8sm8FYYtzQUQFtnbu31NOryTNgIkDLZUmEkAHa5v4uv0oTY/ubn+RwUTLVR2evCF60k4Hznx263ewTfT9e5xxhFHOzRU540qJixcvSqWjKBrqPeKEGYThw2WvNmjuMsbv3Pk8NQqLCAN/49LPweEpOJOZ1A9ZTgcjWQAm0O32rU84J6XE0tLSzhc77mg8G18I2qxKcKkQangYS0mYA3HCsH3/nkdkbwEUC3o9IXhNaBhKoEoAnnAXqD+fPhggbd/NeoxUGkoJzqjl+2l6dPvWb5cv18KwSdyD2qKUIBI77Z0Lry/erOc7LDm9KML35ioaN+sxESRlYYyXmd6ROjAxIUp8Ky/MMPD/486fMqVjl0i4dj6rn6cZz7/x5lvlcrk0VwRjExeQ4bH29v173FFbwJnooLVY8+pSG4vgUO8V2Nr8wvyF1xd/9sGHSIfDM1kGK7+rBPX9e8iUQyScM0opAWiD/MIYWbVFa4HJaymI06C5u+zV7JzRgTAmF3gEAFl2913OCYBi784ZLxZLMKkwZt5A+uy7Vjnl9JQUBq00PYLgABWDhMEIjyaRIk2Pdr7Ywdc4Yb98MkycYJuAhaNlTZhgS2s+NGI5F9DnwWzWzhcPErBZmh7Fg0Q6LIczrmaBY1eaGDTvX9rYsNyFnQ67LYILMRr2GgbNXc4I6z/slBgQ8IRB7JaEq3TgQZQgIUxKLtsf85dawLQJLMCTGlBw5sMNKJC1SsSDBLCVY0ROL46wjWC3P60ccbMecxwLCaSAxr19d9uFCYRrQax4Qg3RU3Y6grB1+9YnUDoO9gO7emdbrw/X19dxZngYe5xJIa0dEZo5jpUSly5txIOEiN+58zlOft1+ZIUL8J7dgwzDhz/74MPUsQWig9s5iiLy2N3tL9L06PatT6r0JSwL6AMWDcIWX/mhzLYzUmeXBOJAmvliEGMFTi3f9zjDDrMSo1x+SZxA+oDgQ1wMmvfX19cx7NbW1m+ufhyETY8zKEE43w1arvSUU07PnSAdAwisBAHJwmgfJDgJq3T8+bP/xE5HdyzKwwgU4Rm8MBEuYqWJTqdDRO5eg+83r1y5Yr0PBs37q6uryE/POSnVIBJ2uxFMBXMGtIBr165ZlLHLfgYrDaKRudSIHmR2OgbNXZ4lzl9aWmKMLy0tIbvULy790hmQhoexUg2+8sO5uWKxWPKIIE0YPSjbATUwRCJNj27f+oRxPr+wUCMyqhOJFLjDhZERuBg075fLZVhnP9q41G63MbF33n7XZN8nsfPFDhHl0kROL45cmAAuuFrGpw8GnIS1Yg4P4z9/9p/QqYOwZSMkR4x/hp0ORIha96p0as9veBhP+1DONNed5JJo3Qqmr53hsOR0xoJ/yh6kVX+mnaPsr4DViT9Z98qZA7oeVk98zOHJnuM55fRcCOucsU1k/hHWotn45vhmPcae6KcPBvEguXPnc/AsVAwrR5xRmoBhout4YU44NT3x63cRZAIOTqdTXJLcyycgwN4uDJszb/RER4+Jg1N8LlIHhk4ZMPeeyOlFE77AETqMu2zfrMfQPqxt4k+f/xkCiJN7pfVUSscpMR1h4G9tbVlpIp3yek5PXVetvTB1mH96hJPGOYXBLH9OM/bMcZ6GV90RTu9/uiiR5jCR03dF4HkAwZgo4egdrhfmnTufQwCxGZtsfpoz2SYyw8adO59DwT5d3gY9058mRAP35OmsNR2uCoeok/prrU7SICbuPjGx01HDFShmdsitEjm9aMLqCyECmoXd17AChRv6Va/Xe/u9YRb6NeFhdRbbBAQSwMS0mj2TB07BguGUJ/WgeR9WQ1fomObMpwmLeKKCABePifMTZoiZx1Bnhofx4OFfrJF1OqzrpAfPRYmcXiiF4cN2u22tdWAW8Kbb4jPe+Wq70+mYbUrHePlUMHGSbQKZ4+7c+fzKlSuG0xhDdYz5hQXGeeObY3fGMxnjFJiQerTHOcGxg+Z9eD2X5ksFTngFM8d0D1yvh4kpDZq71m/K7Q9nsGKxBMA6hdvhJJKOw1auXOR0vtTb78WDZOeLnU8fDIRQ1683hFAu2TOfPhgEvZ51j3Q1hm+709ENfOs3Aacm1wtzImr7FNNAmh4lceJqLin2NR1/pNThQNzLMjPnZB00Z6onGbjsWnevCakEzlFuZyWIM7I7JkKQjQpPHZuoHWHQ3P3FpV+6gk9OOZ07wZURn6t1TXA//onPNQhbURQMD2OYJEyu+W+TbyIIm2HY/OzWvxiY0IZ1g7CFW2qtiIuNjY8Y43BPvPD6ImeMMf7pgwHkfCL+gzcXOWNCaVzCGUMo+rVr14gEEUFCQeiX6yid+XErwASKCc8vLLDC1cY3x8PDGKU65xcWGAl5oAV5xWKpWCyRkLLGUfq4wNak0sAd6+WZxEmNRkKKfa24BcLk8dK1FBcvXmSMX3h9kXm/t1IVItwRdZdTTudFcdKHYc46BJ0CE8PDGFmvh4ex9cIMnjJl7glVv0xhDhtIjmCncrmMKInV1VX4SgkpUwMZZkEePPwLJ6GlqQwaDxKnWq93s24WahP6JWWaHklJ5GSdcSNEb9/6hHPRDXxirCJ1mh7JGl/bVHCRBqsLQWl6pI/NIK7cAf+oQXPXxnQNEaDh5MuIHyfDw1hqRYx/+mCQxIkSxKtKa0WMEx5QCkZCa0XcM26aqnHlypU8o0RO50hg+3iQIM09Wtcq4dIETAROWpkzShM2a8VI6chiNCw+4Qy2ZMDzpYX50nypWCwxzm3MhfV0tlbAEUxk2j6UAruFAYiBm6MJ/ZLCag0WIMhjjPM46ceDBOIG7pimR4Pm/TfefIsxzhmDz3XFkzarDXw0cWv3pvYB4aPtRq8hP4UNk52bKy4tLc3NFfPtjJzOkZ74+U3tCQaZCbMVjjtNnLEieddIE59sbHyUZgZCm98pTY8GzfvWOdoN/XLOiDQ9ipO+Dcp2Q6FcRcAGm46MkSSwoWAxZflyzRFDSGqttUrihDzGGJdaW9uEUoIz5rf8FFYJEjZmxNxaK+IeHE5GE9ZO3JcUnI1HgkmB9BN5NFdOLw+Z5BG9njzQf2s/kkq3/IdKNaTSSjVaLd/ujHY6nTQ9etT+ClwWhg+txvBUoV8n+E20wizJHaQJmBLHgEAre0ZrhbwMw8MYWW0RJeHGdEqtapyBOW1QqdvB2kcxcuqYNo/TxseFglU6GAktBXJVDA/jK1euSKURJyq1Bh5FUZCaCC5qqLFUmnHSl0K4ekeNaLu9TYzXhIbSsUJG6RBKww5S4ATFBIpSTjmdO4FloigYS0vj5sV0XK1Sk+QuSW2Suwwjzi5NoL6eCxNID2HXUiy2rnQwvzBfLpcXFy8gcQugIc2its0BY6X50vzCPLJXQTyB7cCaXhAJFvR6I+8J6B2wLxauSq1hrUB+BxIyHiRaKyH4/MICCSnIm19YKJfLV65cQZYqDJhmbvDHaWNrawt6DSK1XPMkY5RFu9Pi4oUCW/OImPf7+HFi+8wvLKyvr5/kVJpTTt8B4WP2/eYovd1ERswsgRXSI23fvQshHTllwqBlvTDPkr0qCFudTicMm5/d+h1MmNaXMR3fELUiwLRldcJPwW6ITuxWpukobbfr1AgOnNhqtZdM74xOGHVH4yR9d8N1tK8xnjvfRcDheKTZ9DRyyulloCxfbGNmptzGN8eu13ZqAsmTND0KnTKi4ZmliW4WiO5GiKYnR2RM00ns9MTz09yeTmEEOPx0vp1mdRcFZl7lwtlJs5q+cMIf5CnfyVNeklNOpxA+aYsRaXoUP06SuI/9DhcyABPYeYRbA6DhW2WvAkbESd9KEzNpOtx74vhp+G2a20/hYXv8rDz2xPFnzu0ppzR0QlQnek5EoDzNNHLK6SmpG7RSmzI3g4Oa0HC7tCHk1jYhpMw2RGfDxDPXEIVM8sd//TdXmpjJPzMZfqInxJCZRQZP4ZbhrJQWp9MpaHI6OpyEa2NPkWXKmXCYtx1mSiJPnGdOOZ2N8AUCCB61v4qTfpz0kziJogheAtA7ABbpU8DEWaSJMGz+x50/IaYD03IZ75Tor4n2meQF12w583YTcVwzxzydCSfiMr6lnJJt9E4muTkFEN06BjnldGaCS7QrTdysxzWhXQKIwGNYSAm2emaYONVvonXjxk1X6fjs1u8WFy+UFuYXFy9sbW3h5Ji9cDBpBRyO2ztPKrppaQKSkAK/WCyVFubfefvdKArgJD6t71j+TOIEsWSZ67c6hflxC48zWwFM6skQMtBJ5Qtd1/J0Cq1OydCVU07fktwkd+12G46YUmtjm9C68c2x1T7Sp4CJZ9vp6GZhIVtbWzaQXAqxvr5ul82PP/71xKo4waszZYp0fMcBypXLPBZQLL7AYzKJTR5KbM2eVAHMHWSm4TOdyjo1ePiXn/70p0SEfIFSjwLPbJ8JdcmFDDfx/0lkH99e6Dqq5ZTT2WhamoBtYlqaaPn+8DA+u9Jxyk5HN/A/u/UvgAmUq/mf1sMJ/gnDh0tLS8ViqfjaP/1P6+FQ73FOl6+/Xyj8uqHE+vo6cY8zRkLWiEoL83CR+uzW75DG9p2335VKB2GTOKFEmMeZ9ZtKnWjR4WF8nDYyH2r6xaVfwqEbUgAqgDHGkRobNUEuX39/cfHChdcXr19vpOnRoLlbLpfnF+YvXryIykApahFqZXPqD7PkFPAcRZ/t9l0i0VCCc9rY+Ghx8YKQkjgV3mdC4HK6tLExv7DwxptvCWnmgzg0eJ1prX5x6ZeokDbTQJNTTmcgfEgAgsY3xzBMmD0ObSp3WNeJ9AXsdLTc7FXDwziKIuLe9J4iX/khTrZ8n7hoKPHO2+8iy34YPuSMywONUjd/kA2X93A5luK+f2+sRBiJg/0AHeBqBQuokB5lhXO2724PD2OlBCMTGIYXYRwopUA5Pwy47NXC8CFxD7eu1+tepkmhZCn8xAR5nz4YoHCR66k9ePiXrGAPDZr37979L8a4VFpKQtEg1AdM06PPbv2LRxSELfIY4ADe4oPmrsfZ3bv/lY4LUznl9G0otDsdalKaADS4+aziQfKcdzpM4a9eD1W/MC7YTGu1vr4+N1fMOIfB3xErpy1skTou2DbKC+6YWqu+f++dt98tzZd+8OYi5wIpakxRr/EYM0RwlOZLi4sXLl3aCMPmZMiZqSc2WVyHc+XKIwAXVDYszZdWV1cRljbMioAMTe4ZQv/t9jbP4k3dEj5I/A+5w3iaSrIhbYOHfyFGSokLry8uLl6YX1goFktuBbB8QzSn50jgAqUayI475lI1XnBYqcbwMN7Oqn5Z/8unDf06Ld9E4MNvwkoTwKQ0K4ShlNjY+MhNh4/FcwwmsvhOGyra9+/Z0CxIE0oJzhuZMcJgihlEi4lK6Ka6V5YPAqX63PCQUQWwwWgagIDpHN/D8VpBStDW1tayV+sGPmV3yRzPR/UEDepNVTOzd7clSEB2dyaHhpyeI7m5MCciONwkujZlrgMTI3/rs9smsnJArQkTJs84re/f29j4KAibFy9ehBEVfVDqyg0VtzBhGazv37u0sQEgRDoJN+GdLdtpUWOCvREJOroFiTDwiXuIyFKCiIR2BgQzB2GTr/zQwpzNGjg0eS6NlRT6Audiu729urra+Oa4G7SQLyMTlPoQXtIsKRYKCGJAYe6uUJfY/jsROHfuX1VOrxhNe1tOKCDTKXNNTEfmGGUTTyDfxDPvdCDC9I//+m+ACUxLCjE3V1xcvMAYh+2w79/zOIO5bmPjIxshljpZ5xCFnWayxvAwvnLlyoXXF99486319XUboO1aK2zcl1JionYWbAeI47ILO3LklMvlN958K4n7tp6olQWsmfMHby6W5kvr6+t2rwED2p0IgEKaHt2+9VuUFIPpEd3wFHhGPKBN2DM3V0TILG76xptvzS8sWO0MofG5NJHTcyS/5f9P66HdFrRsMpGZBg5XSjVG+SZGARnfSpowFyPJ3UxPoelYBndDND05ROIkjybbThtKJ7YwJzyj3c1X92Bi2HTKJWymp8PEbN1uE9bHoZN3M02PsFU83WdizmmueuT0/AgFeyYS5E7nzkXWOHhnYnshy57ffKrQr5MqkuP6CWdtS9NscFKfU1hi5EnxLF6JEwO6uABWtC4VrneD6yV5yoDT3l9P3L98mgecOeeccvqWhLDmKIrweU8LEen4xzaRCzPM2PzMXpitbuCfEvp1ynf/9MmdJqSPM9NJ3JjOkg5Oh4kz3GLi5LSz5lMOklNOz0omX27Sh8eAa3cDTSzAQdiC5tvb7wVhy/WQOqMXpvWbmAj9mkCEaVZ/Sq6bZqEzbxY+ZecJmDhpAm7iiWcdc+aZ6XnmMJHTcyHAhK1uYT/d4WFsgy3d/r39nus34RYHPKMXJqSRGzduwjYxvSzbnHH2zISQ85RKx0x7gT12q4HYR02nzBAI3LDpMOwgCO4YUyvkWNItW0nolEg219yQpecT04+fU07fMdnM2ja/9unieRRFQBYrSnwrv4mD/QADIQG/5f+tra2lpaUfvLlovaTdaZ2SW2GCpqWS9ISVWUvxztvvMsZLC/Pw6TTdsoRXE2Ze7G6gSJfl5GmYmCj501CitDBfmisyxk+vAJY6G705OuR0vgSTJKSJZKpi1sz+p8PEs3lhIu4riiLXNqEEgYUwm99c/Tg9WZKfGTFp4cDtj7XaZq+14kO2q3rfuirZrUp3BBdBrVaGkmIT72g4csQQ7gRMBTCTnr9fI5JORj97O1eacPN0PxfzSk45nYFcmLDVJL47aQKJMHv7vdu3PgFMxIOEPGaT1tupDJq7nDGsw0o14HF0+fr7rHAV+azJY5wxIVSNqFwuI/RLCUIUFmcklEbghiCvXC6js72FluLSpY3MI1MRp8Y3x/C8Ls0VOaMwfIgBGePzC/OcC62VIMYYwblDSioWS+Vy+cLrizfrqLgxxuSCPMSGWiAYZtHlxWJpdXUVRZwHzftLS0uMm9ofSYz0ubxcLqPQ2bl/NDn9o9GENPEClY5TaogGYdOGfoVhEw7RCHM4ThtIHkHcc9y3hVJidXVVCDU0xbW45WpEVdnM+niYRhb6tbS0ZGK3lImwgG0GTtapXfY5DQ9jYsz6XGZlOEwFMEUktbYFe1w9CEEZE8n+B837lIkSrgTEnVgyxKHwrAIYoDAImz/+yY+ydOYPeeYtnlNO3xk9d2nimTNru8UBh8ZFmqTWURQQ8WKxlIV+8bm54htvvjU3V+TMVMRwYzqGWc2O1JTYa2itBs1dVM1aXLyABPkVT1rxwU1OhXpijPH5hQWEiiI+Ap0RMC618jhjbOQtCr/PrIqf4Cs/nJsrcsZQGcBWAIPt8/9/7arU2nWsGDR319fXTShaFqbx0cYle2bZq0GMwsRQOR0VU3LK6Tsj14R5btKELeczPIzjpE/cE5lwbkO21tfXxwyEbo0frNuPx2Klli/XAC4IecCfENNhwzHhOo1tC4s11u5gA0DixwmqgZpoUa3IY4yRPNA2ikRqI8jYe7nlRQATeK7UMZ1oKRBpbuJBTSxZFnsuBedi56vtSxsbtkpAOpVAOKecXjQBJs7NNmEqmgctW2o4TY+UoGWvdrAfpJngrbWyqRYwOcDHeLEvPYoQnWJUjKnUGEy4hQIniomngAPGUZ5ECSpU5KB5XwqTb0NwTyg9KiDoVC2UNc45ZeGe2Y6JreiVxbkqMuIJsEPWOCqAcacCGKofe5zdrMfYW0lnbY7klNMLpedum3jGfBOZbeL2rU8ubWzgHtmmAJtfmGeMIxcmqmAV2FqxWOKcdto7Ni6rG/gbl36epkdKNTYu/TxO+l+3H62vrydxUiPijHHGiGhj46N6vU40ij1163R2Oh3ilIxvKyAUvTRfYoySOImT/urq6vzCwoXXF0mYrRAi7nF27do1IahYLM3NFYn4pY0NpRo2OG1kthDEGYMxchSlxlixWCpwgglTKVGaL5XLZSJCABv6zC8szC8scD4Wn5ZTTt8BnbM0MV0cEDThJeGecd0Q0qltwulf0/HlF8iCbqdspk4QjAXDwzgMH068nek92jTzqpiYwHDK+8O9yi1rNjEaqqXO/FNOOX0HdP47HRhia2vr6m8+nggpsUr4tAOl8S1/PNZhOhZlIunDKS32O9ye7u3SWRaB6UEmbjTTiGAyfGg9ca/huKuo++sEsky/lvwgP3ihB+e802Ez5H1263cbl35OJDioqlZIrW2q9y7vrZCqkOTUwJkVmkG8amjsDDXs8QqpKn25Quak7WkuJFGlLzk17Di229rm2Dhrm6YDDiok7VTtmO9d3nNPchL2jm43e/cVUpyEvRH6Z48g7Jm1TYU3U6UvzVX28vwgP3iRB67ScQ7ShE1WAaUD3OLy5HuX92ZCA3eYDVDi8udJZDtwaoBj37u8x6lhOdllY7wgVtkrVOXMW+O+mN7y5dqKg2K4BCNwId0/cQcBOTXsIO9d3itUJK+qCkkMzjJ4MmNWZKEi3UHyNm+/m/acvTAzK2bLwETGQiuj5bRhgc2cpAYJ6UId+qN1WX0mP9s/2ZN2NICIuSOJCsm1zdHSvTIlC9jbrUwhF45JyApJeaDtyUJV2ksgIpn5ZDhFQsoDbQSfanZGaUzSfd78ID/4zg6euzTxzDsdXaciOSdRqWmEXcWDhIR013nL1WAkTsKuxiukli/XXCAAoGQHY0KK5Xlw8qcPBrjR2qZavlwjMdolBXAK4YxZHSkFM8nCEAnZ+OZYCBUn/U1qYHp2tij9XiHpqiTADpy3kITnhTp2yn1zyunF0Zg0kfS/a2nCHAQ+YAJz4kJ2Oh0isezVsK6CDI/VUqzPlm0gvc98PMuW9teJzna1x2iFigRbgrE3Z4n9zMGmlXFziR0Z2gFEkmz8hj2Pk/HjhIScmLC9ux2HUwMwce7fSk7/sHTOtokwuwxKB+bEhezt96r05SY1oiiSymwK3N3+YoUUyl6k6dHNekxC2rQ5N/747xWS7XYb4VUkZG+/h+N4kGzf3eYkSEi7DXHjxs0qfSmVGU0qjdW7UtNRFFXpywlzg52bPNDxIImT/p07n6PqkZCSVxW8pOLHSRL3b9y4yavqYD8gITudjtUvQBWppZAVqaXSVfpybVNxIeGIBdqkBglpYze6gY9xpNLx46RKX3Ih02wzBcIOYk+SOAl6vWr1wacPBkYgepzA2JFTTmemsXwTTmnukxyCLUxEUWTrBAemGGjw7Dsd487aWEW5kHHSXyFVqWVMSKImdBRF1eoDEjKKohVSFdKNb44rJCskrQIfJ/3r1xucBBcyHiR/+vzPQAdwlzzQQqj3Lu8ZSV5IKB2bsDiS5kKubSok3kjTozjpS605iUJVgtmQ/EKIsQNw5oqjyLTb7UpNB71epaY7nc6mYwTlVSUPtMiG2qQGzkghMVXACqZKJIB3JGQ8SGpCV0i+d3kPk7e2DGCKIFWlLz99MBBC4eQKqZv1OJdEcvqWFPR6Vo5wVfKTpAmLJlmSu4dWoDijNNHb72mtEEiOOUHpgHIOLsV5oAOYkEi4Kyomhz9BT7FCAS7p7fcqNBIl0GJtb3xzDM0few2Vmm58c2zFfnC+UBolmG/W495+Dxuo8SDZrErIPgaMEpNQNIkTEjIMfAMZ2b4pns73mxWSm1XZ6XSuX2/Y6a2Q8sT/BfZ1e4G9CupJJpUIckQPPHiFjOghSK2QKlTMr8DQc//Icvq+E5LWJVmGu2GWNdq6HU4oIHY3JIqCcCRNtLpZnY4zeGEG3cw2YSz8Qvb2eyuk1jbVX//+NyKxtqkqNb3d3kaHbuBXSK5UdafTEY6FcpMa8kDbpbu338NavVJL//r3v1VqWmpFJChzRrCr8SY1KiQZNQoVs1aPdlKsFwMJXlU8Y3uICeDkTqdTExrr/wop4MUmNcKwSUL+9e9/s6bKtU1FUlrHqiRO6vU6+uDR1jaV1JqEjKLAvo0k7gMmjO2jlsJasen4gCxfrgEsIKFgzlIbJeXcv7OcvtfU6XRshjvr8ufGSU4rHYmp0zGSI54KJk7ym0BmGqTMNcwp5F///jfsJiaxUa25XU6FlFrjJDgTRgSQ2T6oKi7ko/ZXOMkzroM4sHy5tlk1fIuV2e508KrBGncRxrE90+l0wIfdXlClL6F0GLipyhVSNaGjKDAyQk1bScHO8Pr1xgoZhSJ+nBg1RChs9AAER2ek7nQ66GkejQwkYViggFCaSGxWJWq0bd/dHr2i8/7Icvq+UxA2h+MlYCZoQpqwdTomSn6d1QszaPX2e9gQXV9fX4E94kCn6ZE80FiiofbbZb8gjLEQG5mYjd25VKoBTweMg4cExGxSY0WIJMsfE0URtHeYJKUynTerI90EmtiNGzdXrEdGZgvAhSukVmop5AtYDZM4kQc6iiJMoFLTUo1AByeNKkRihRSgBA+CGvBRFMHaEj82ZwATSjXsOFC4hnoPIgm0M0D7pw8GjBp4h2l6VK/Xz/0jy+n7TiOX7cemRKDf8uv1ulINtKgM6Lf8drudpkftdjtx6nR0s+TaZ5QmwsBP4gQRorBNQBCweoSrIKxYrwRHETBO1tTgVWwfCvASHHeY6AAAIABJREFUth6JBHP8nZnjpAABnlEDVglMD2u166FQpS+hj2A+harcrBrP8fcu71Xpy9e8PRrNx2xnEAkGRaay5+6qYhDX/9Lx8jBzsw7aa5tqsypZ9kT2Fis0EqBYZW+FRg+O0eBUsiLECinO1WY1N0/k9K0oCFtpetTpdODvIw9045tje+wWEwVM1Ot1d0M0dHY6zmybiLpBCzBhORw8X6hKLLyMhD2JeRvHhMxr03VSGi25GbiskKpWH3BqsMoed8IoeOaLmTlrgT8b045MrqMErrIbpa+JBoYCr4LPuTPhcdeshhvxsZK5WhYq5kktVFl3b7QTzhqFipz2YTfaGQl7LaZ07h9ZTt93QkImCxMzMQIwAZkaZURhm7AVxb+V30Sc9IPxQHJXBZowk0xEbU87eEycnwi7nPjTdHD66aqXGw8+c8yccnolCTVrxqBhHCNu1mPAhFQ6TY+ElMl4ccBuYPysziJNwAUT2auuXLnyNDU+pznfPe8eTyDCdLd0Kg3/ScNa6246FdY9PWaOGjm9YgSlY4QOB/pmPbYw8emDgQsZ6ThMdDNR4qmUjpOkidBEiI6S3M2UCNJZtXnc5X3iQpex03FBYPouEwLLxK/Tg+dAkNM/FIVhM7UwoTSRGOkaB1oqzUlYgSJNj4SUcK8KwmYYjLlXnUWaCIMWtkys0rHzxY7HWblcLnD6uv0odQp/g2ORXN8mrTxJiJjpcz4NPUjknTjpXgYP/0JE9qaD5n3k7F1dXWWMl+ZLFy9eVKoxRE79LNFeDhw5vcKEzxugQCQ8Iu4gBSfhEREJq3Tc3f4CMJHtcTTtnujBfvDM0kSn0wnCptbKVv0C+/Esqz3IJq1PTa2dsVS0Jz3V9K+uZ0iKylpa2EIb6IO8+/baQfN+lv/WZMRFFt8srTbNvGNOOb1KNJImlG58cwyYgEzBs1RSsF8CJra/2MFOB/Y4QmNb8M8oTURRFAYtuyGaZtUrkP8aFTqJeLlcLpfLiG4ijzHGGeNC0KP2VxcvXpxfWJhfmJdKI932ZXoNmeyJBAmamyuWy+Wb9Xio91KpFhcvFF/7pzfefAvSERFfWloqsDWkwE2zFNtpJlzgV6TJho+G1sqk+ZeCO+X/csrp1SZX0RglmsswwtopUgcmsA8aZi6YZ9zpaLfbMGF+dutfLEygrhdggtsU+Eose7UoilCbU2qttfrpT3/aDfwUMZRctPyH77z97t3tL9L0SCnxztvvCinjQaKU8IikVtAvDBKRSOK+rc1lrac2i//QScwPaQIdUEojTvoYJM2re+b0qhMq78L6AGPEpw8GlOka2On49MEAHdL0SEh5sB9YaSKKAsgUZ/TCxPU2piPNitxQVm6j5qkw8K2IkTrFe2xa+tJ8qTRfYoWrbtUfoAlMDNAjUN2nXC6XFubnFxaQU9+U5zjQ1mypbRUfSBPawMQbb77FGC+Xy+SUEVr2aqc7seaU0ytANnXDyGyZ2TKx5QGMQJvEiZDSKh0WGsIzR4h2Az+J+51Ox9YQ1VpB+U+dulvDw7hhavOM1v9Bc5ccI8LwMLb9U9T7yY4hnqDijts/TY+CsEncS53NDlv+C79CZLD1xIBNKKjh2iZypMjpFSYstwACd4PDOk3gPA7S9OhPn/8ZrhY2oMPaJs6UCzPwu4Hf6XT++K//huKAEBxQCEdmEoG1CCRx0vfvXbx4UR5orRXKYVmWPk4bFiYgFODxADGDh39ZXV29fr3hPn/fv4dS4PbMcdr48U9+pJTpdvvWJ5xEpqQkaXqklGCcywOttbDFgSzl2kdOrx6Bj1q+DziwYAFcsKLEpw8G2ASEbSJNj8LwYTeACfPpAslPiBA1coiVJgYP/+JxVmBrq6urtmg40AElP9P0SAjOGL9x4+aguYsSxKW54i8u/fL2rU/IYWbb316rVINzmpsrXnh90Zb5/s3Vj8vl8rVr1/BGYAdZXV1dXLwwN1f82QcfxoNk8PAvKFkK2traKnC6feuTcrn8xptvlRbmf/bBh62WjxFyySKnV4xMhreDMdnB9dG+WY+hkjS+OY4HiVKNzIRpUk99O7+JsIl8FVtbWxPO2qd4Up/kcDU8jK0lcqKPNUlOD+L+mtk11MSAE66fp0wpp5xePRo8/Av8g1yvxZm1f5LYYAS6ORGiT2fCPMELs4WDGzdufvzxr61TE+gU90fXcGhrf50EJdN/PYmGTqDH9CUz55MDRE7/CNTb79XrdSHU6VSv15M4sWlpMphoBVntrrPVEG3Bn+rOnc/b7Xaa5b0Jej2kkIiiCAm2Op0O/LpwXmvV6XRsWs4oiqIoiAdJb78XD8wsbdbwMHyIkbuBHw8StyeSSriJg8OwOTyM/9Z+NDyMkQIwiqI46ff2e7iduerx6C52nm6Gn7zN21emhTiA1DD44MEOcdLPuM9wQRg+jAeJTdIfOCW7nsqEOVuaCJtIjONSOhWFeZJAMb2kz1zqk3HpaOa93EGScQ1lZs+JM9N/zSmnV4aeVfSwFwI7gozTv0WEqDFPIOD0YRRFEBMAS/DUDMJmGD7Eko4+dnlHCn+YSeD63el0stx5DzFOFEWwgCRxEobN+HFivT5sHwTGB2Hz6/Yj3C6KoiTuI6OvKVCG4HlTRf0hQDR+nJgtn6xDtxeYbBzhQ9wXB/mZ/Mz38UwQtsBlQWZfgGiQ8Z3pEAatLEoLjPAQOSJsh7N7YQZhq5s5cgYmbR5m1pw4ObObaxqZ/tXtM7O1BtTpv55+rTOHkUw1PZO8zdt/zHaaZ23bDfzwWb0wz/158jZv8/Y7a7sZTHwraSJv8zZvX+G2+0SYyKWJvM3bf/C2m0sTeZu3eXt6282libzN27w9ve3m0kTe5m3ent52c2kib/M2b09vu2eTJuAWBX+nQfN+PEjCwLe5aqRWWiv8KrUKwlYURYPm7lDvyQMdhC0UNIc71qB5f9DcjaKo79+DnxXuNWjuoo/WAm6n1iEscxppdjodxMMHYTOJk75/z8a0aa3sjTACHEi6gZ/ESRQFWiv82m63u5lHat+/B+cT93Z9/549djzBmoPm/QC+Xo5PK6YURYF1HgvDZpz0Q8ezpRv4Q73XDXytVRj4nU4Hc87+MeYR4NDyMnwleZu3Z/HCBI/h+9Za+X4LnpcYERyexInhhLCJk0oQ57TT3kFkB1zNg7B5sB8EYVMSJyGDzNkJQIPseEmcZCVPW5huGDYRi5FNpmUZ1TpQIctWFEVaq3a7HYQtrVU3Y8tOpzNo3u8Gfpz0v24/Qp9u4D9qf2V5FV6bYOYwaP2t/SiVCpDXbrfDsKmlANgFYXPQ3I2ioLffGzTvB71edibqdDrtdvs4bXQDv91uYw6ATq3VoHk/Tvp4sfYxg7DZDQyKvwyfSN7m7Rkrkhs358Dv+/dqRDtf7Nj1VpBHQg6a961T11///rcw8AETUislaOPSz32/CRDBGiuI/UE2oigAcITGP7SFfJZgNikN0CRZFFkQtuKkr7UCT0ZRZGsXhmFz0NztBj7S5M3NFefmiqX5Euc0aO7Gg8Q+wvAw/rr9qBv4kD7CwB80d8MsOfCguWu5F5JCGPjxIEFBpL5/b3gY4z3ipki62ffvJXG/798DXAJKgDi2kpKdQJz02+12JlYYf9YML16KryRv/5Hb7pmzV9nEFVorIXiNBORqJKf6g2wM9Z6tGhRFkWXy7fZdrRVKeGutukFLaxVFkSBPSDlo3kfUJtbhIGwiJ13L9w/2g0FzVx5o3BR8lcR9MCdQAz/dwEc3PKRS4qONSwinRwcoF6hZkkq1095J06Nupix0Op1Bcxd3z+JKRoqADbYDXKKDzRoYhE1IHIChbqZrQHTSWvl+E/F5QYaPWquv24+SuO8CRKZMnf8nkrd52z1bvonAhE6Y0BEs+O12u7ffAxZEUaSU4IyVFuaLxdK1a9eSONFyJE0UOAVhEzV4kMaKM0ZCKiWWlpaKxdLcXPHatWu+3xLEGOPFYomIpKRlr/Z1+1HfvycER5L+K1euxI8TJYhx/rMPPvzBm4seZ/JAWx0EKXn9lo8IsTjpX6bXLl3aMLNlJAQV3mfvvP3u3FyRM7bz1TYEH375fzHGB81dIag0X2KMe0SpVIPmLmesXC7PLyxgzuSxxcUL5XKZhMAbaPl+b79HguYX5hcXL6yvr/t+UwlaXV1dXV0tzZfIY0j5K8hDISIoHa7e8TJ8Inmbt90zShNZLs0g0zt+9sGH9Xo9CJvQOBBmDqskqnJ8+mAgJXEudr7a1pIKnNrtNrgRGrsgRkIiWA0CAmd8p70DGR7mTHCgUg0tySPyW36c9AV5QijAxPbd7a/bjzCHvn8P1kfk1wYKLC0tffzr32gpVldXSQhB3vXrDSmJce77LQg1JKQSxBi/c+fzbi9QSpAQEASE4CTklStXtra2YFkQQgnybty4CWT847/+G0AwiiIliJPo+/fCwBeCCymlpOJr/3T37n9BNRNC4eAXl37Zbrdh9IWS4hZcehk+lLz9R26fDBMn5cLsdDrIYTVo3tdaCUFkMlnTTntneBgPmvcFeeVyeX5hfmlpCUxS4CS1sjAhiAmhADeCGKlGN/BrkC+yq7QUQIRu4GtBzBNSK0EeCYGiG1ISJwHmbPn+8DCWNc6FhE2h0+lYYccWSdZaQWzxiOJBAvySWuEWGA03SuK+IAa7BmMcMo4Q/J2334UUIw+0rPELry+SELBESEnME/V6HUbZ+HHSDXwlaPlyTWYPnsSJrHESMooiLUW73R5m9V2DLMjV7hzlbd6+JDDxbBGioc3hn/2KNLlKEJGIomDnq23I0riQON2sx9rChCBGot1uYx3uBv7BfvCbjxkJiauCsOn7rUsbG4AJzqkb+EHY1II4FzvtHUHsZj1ut9vxIJFy5b3Le5BGuoHf9+9ZmMC2AmACQNN1NJGlpSVOohv4UhJxsd3e7gb+8fUVTgJ4hL0PSUwIFfR6vf3e1+1H3V4QRQGqsc/NFTmJQfN+37+3tbU1N1f0iLQUzPt9p9ORxEhKGE20JJZhGeAAMNHpdExejEw66zrbvS/DJ5K3eds9c76JLCGNqSDW9+8R8dXV1Rs3bkZRMGju1oiEoCHyYjN2sx5rQT/+yY++bj/CohqETSHo0qUNrdWj9ldEfGtrSwja2tqKokipxg/eXNz5Ysdv+ch/ncQJFBBrDfm6/Qg1wUgIJYxEEEURVANI+33/3qC5+7MPPoTJEGn1wsC/dGlDfLkFnLLSRBRFmMbtW5/wjJ8/u/U7lCk72A+gVnz88a9b/sMwbDaU4CQkcaUacdJXgjwiM8mw+dmt362vr8Mg+rMPPiTCJKnxzXEGEyKKIkHMI4KdwtZHcP5PxlQxvveRt3n7/NvQ0tSfzlaR3GTFwSjgxs9u/Y5xrlQDRnulhMdZab60urpK3Pv0wUAJ+tkHH/otXylR4IRFeH19fX5hoVwu/7/2vua3jSPb1x1IgkREA08G0C5Bdtpd46YYaGZjwPB6BpgVV1ejDK4r+Q+4e0kArRV7c6XKAIEH8xyAC+Vq5PWVYwwkW+keQAO8brQQZpBw0KVq+rLD3gmguv0Wv67DYvNDJC1/yU0cFIrNZtU59fGrU6dOVfGytbt7f6d2Z2VlZXZ2/sbN6zduXn/44OHh4eGNm9eXl5dXVlZ2and+99vf79X30tThem7COQf0QNFoNBqACayGSuV+u/fgF+/8ChOHmZnZGzevr6ys4HoRrJXiZoD5ufmZmVnO2Q/1H9HV2+5BFLfa7uPNzc35ufnZ2fmrby9ubm5u1zbmFhZg7xS2bW+x9959f35hjlnWn+wj2+YrKyvwp+Cc/eKdX83PzVcqlThq0YJuID0hGBciWz/mwve8RqOhskVTX0mvnt3AWFBBL5CUi+Zn9u5AemE4+Y3kgfQ6p5FSx0AgqVx4LjQaDZpR44k+Ws79579+glMW1kGxICq1Y0LUjtvu40aj0TmNyLcykJ6SPuj/+cfZ7L0pwUbzpBlHLZ1p5kPVPGnS4ij8JsBndpKXcpsnTZy4hxVNeDeg9/5Y/x6LoHEUK+mRvYD0pjCUSrnkBKXggRq3Wt4+8oWHldSHi0E7gHQQtuXt1+t1rI+S30fbPfA8lw4H1roDllp7QP1VGHCK8HKHpAcoY4YeTGebABCobpvOHIfCUJqdXCo3ilue52NWT70rkF4Ut/CmyQp5OgfSJzdEyoLEMP8SSC8Mpee5UrnkqmD+2nYPlpaW5hfmSJuADqKkBwtlvV6H7uB5bqAvFgi0Y3XL29d+k67JD1yqECcXbJNbsKRfkNDZAumBSTh3ACKBF6ZcUkO4TnDAXJEiRbyIX2A8QPPTSKGkh04xpW2CUoGvMfoGbH45cOqcRqrrgOjB7UpJDx5HSIE2dGiU8dEPDbWiGw+kBzfNQDtNQpXAno44ainpwzARSA8aB1SSqB2TJt/NvR1rXJBUHICqMAyzG0m6+lgXAVXmLdpFNHidBwbDzZMmkkVxE/+AJ6nclrcfyK7HGtVTILM5SDffIizC5xzqtken6XZb4zR+E1IjhW7i6Es+EEGZsNT1EXJz8EF8UA9Rmpvc0B0YL2QR/QKcuwPpQ8MP9PCud3b5SnpxlO37Qgj6579+ojSJDQqRLKwbythy9uREIguAnczMNFJmx/C6SutEQbdwuiLAQ0T/Kwyk1/L2M9XMULWCbHLoymKiUYQvMCQHP6kVitxKx8RemOg8tPcBAymsFRifdafNjvfu6iAEEzoFsilkGzSV2zmNoAIE2engWf+X2Vnj3cQDDS5KuZgdwDEcosLKQB0YxYGdadLASO0o7ZolojJdS2K7BxYsME2Az4hUvpK5Ht498lxDcldkqUvAXCeCb7hSx/QrmSQU6X5mpAiL8PmFyg2kF0dxdt+X0cumXOlAW9/dvb9du71du3337r2v/vyX7drtndoX9GSn9sV2bQMPd2p3tmu3d3fvY7kRz3V4++7de4gjgpcRmhH8Zad2B09sIbZrG3fv3iM2dmp3bCG++vNfdnfvb9c2tmsbO7Uv/rr7TW8KXfbu3r2nM+3m8tfdb0gK8EzvgD2syOgssnzNpBDi193d+xAf7+/UvsAT/Iv4NH+l0iiooBdMu7v3A71Z2UCNab0wsTtru3abc16tVjln1WqVc8650E84Ioj/Ye2PFDdDzsWWfpP3fcyHg/6bj3y0uka5bGX/E/RkHH6q1Sp+qlQqn/2fTznnnDPzjwP/tcV5tVpdW1vt53wEh89eDmtrqzl5h+VrvpkLK5UKhWurq/QvlAP+SILn2Ouvjv4nEJlaSO7lHDMDP5zzsi5kvAY3vNH5olSR74g2MLCER/NziT++d4zVxu6CqKF3T7nSsV27Xa1Wo/aAu8iTIXcI577iX7hMHOG5l5oNTH/YlX/ma3Tb4Ah+cMNgfxZ0xXl/arlM++9DHJjRwHJ4mhyNUw4DBemXd5x8h8k7sCoHfh1dX8O4Gj+Fc5mZIt+BkYKoMejjYLoXf01z3kQgfRwAtVP74g9rf9R5tHK9ZWD1DKykER14YAsY8SYwy3xhfH4oJOAb8fd+EOxvx8PyHdZY+5kfp2qfXd44ipM+3gY+6c9oik4+8MmIdEYMPxPlmyRnYRj2iz9Oam8I0U5lskogPuUdojDUbdc2OOdJb2Mdn4ZV/KSp9WsNgfSjn+P+lCfiKnfXcf8L5lf08BdTDia2Ih5ID/JeSO79IDIQKcYUdijKpI+SIaDW/34OXMbJeliyZo4mLhfUOY2iuIWQlj+UYdef+CxM+BRh0pEkZ9u1DSEclHsctcasPGKrcxpVKpVrH2+13QNmsVKp9OnnnzVPmudWvNk3HMFLpZJlsXuHkSM4F3auEQxsN/2DJ3Ze0CwjSc5a3r6w7UQ3rBwqYaaAhmsLIYTTrxr0U05xQLKd02h19aNrH2+1vP1zy2Gn9kWpVLpi/VrYNuQdp+sOk9ecQzmO+PLLoziK7TS1t9itrTRJzlCt1Ettm3NhnytmMlzz+mh1jXOxV/+WWdYV69dlzoelcPfuvcw13klJ0nEafS5fbPwxdcbUFlsiPTepN4cwJ+gufxhqwcTaBM6bap40d2pfcI79XYJzMbA1mA9pAMxpudhaGkdx2z3gTIxo6zQj6M+lcxop5XIuvv6uDX6SXgtCLtLPD5EQDKj3zf3/XlpawoY0ZjF0jM5pZKcpL1uWxUqlUqlUwsud0yi1s3wJv0Zr7KPLAVA1sBBAUrlb58mbyxd4NExebJwVgnNhl5n1gRC2zW9xu782sX8/GWNg15K2zCfbtduQ9GlyxBlHkY5IJE0dwcrCSamEzyXki1lGTtIobqU2txgTggvhLC8vb25uFrOPRDePzO1AI8WUfhO0oIqVjs5p1HYPOCvbaWr2xlwDguKQJGctb58Mn0ly9jQ54hYTTprBDRPDFPjOaeT7XrVa7Z+QkzVBsLL9JE1Th/gZhgX9/BDz2Bev1DH+JXjZYoyyS21x4+Z1xznCEztNOedciM5plKYOs5j9JE2Mzj9MqWm7B5xz+jVNnVw5gOGB/ZCEEqz89XftNHVu3Lw+Ol/62nYfm+XflVf6kPdj/hYgIGpn3fjof5/mmT/+W6VSsZ+k5/YubJ/jXJg1zhj/+rs2ZZ2cp5UAJr7+rt3y9jnj4+QbRzHyzSlKOEINf/+Yv8XYYC1muvnj606YYGLfk3b2mdY2gY1JSnrbtY1qtQrYxmGW9XodRs2Wt7+ysoIjtqvVKkwjKHqp/EqlQtWAw++S5Cz6OU5twUZqE/gvfe2fTm8x6+vv2uDnT/bRP//109raKvi5cfM6zuOuVqtgbCA/SEoIdu8wsm2O0fXu3XuLi1cxkdnivNFo2EJgjmNZ3E6dLc4xHqIc7NRBOUjlrqysYCcY59wUbWg5xK3UFoyfo1WhRreYBWQZmm/cQvlH7QHykt1BCIYTxt57931HcC5EmVmYQNmc0Zyrp4i4JZwU2+ST5MxxjpBjkpz9Ye2PZnkq5VJv7JxGqc0Zc9Bs2u5jGhhGUCd9JHjZ946T5Mzm7Jadtt3HY+R7bOar2S6jZi2L7dTucCEsi21ubr70LvoqUBiGnWxB1KVd4FPaJrTToXf37j1oE0+To+3a7VtbaZo63OJ2msJScMtO09RhxkiSqR6GvpoKzrQyD5gwFxpyTRM6Z06TJEpTR5R5NiALzoWdpg5nGT/zc/O37LSTPmK9I0zL28eYY4KOo7lKkrO2+/hP9lG2amsLIRzHEczidpoiR6QvnDRJzjCZ7y8H5Gs2WSqHTLS+ciCVgRjLYVm/vE+To4HlPyxfysKUN7XFLTsdWBSJoaekgnNh48gPnOJlWQw5oui7kymnO1OIoxisJskZrAO3yjaG906fcdGc7IiyVkCoZq0s39m3fjM63x6FQueO81lRawVR7QDWleHHPaVtgo6QB0wkuvMzLmSzucX5vcNIsPJ2beMT/nfHEZkGG7fKzJpbWCgzy7LY1bcXceQs+lXW8mzBmcCwvF3buPr24szM7Fd//ksYhmVmlUol/PfKh9b8whwZC4nQbbbSNEnO2u7BtY+3wjA0+bnFbWo64IfStCw2vzAH81jnNEoFL4t/mOl3cUrYaZrx2UkfQY9IbYEGl9ri2sdbzROzHG5/wv9uTOZbZWbNL8yVmTX71m/o6N3+ckB8p3ZnbmFuZmaWiy6m9Mvb8vavfbz15ERitMzK/5PvqPzjKB6YL9KEQIQ+ZBYhg8vR/z6l7pdoNMFhZQ7nX3/X3uJ8d/d+WfwDqhCmYMvLy/Nz80tLS1Tjm5ubZBZNkrM0FdfKW+jGO7U7i4tXZ2ZmYSgxiWAi44cBJ7J8t2sbDGcsAv7SR7l8S6US9IUc6vVPRd9wAkzANtEPExPbJjBpufvV/yWY6JxGlUoFx8/cvXsPY/4WE0JkgwC1MHRUaoi96I5RtGtUT7Q5EF8xEpK5i8YfiPc0OYKhi/iBbXwifvBf4qq/b3z55VHL22dWNkMGTNhCIN+nyRHlu7m5iXxFmQvB7x1GE5UDLX+YFQmlBvKSYQ9pclY25ZXNJuQdnW+/vFSklCNnZQibByl94BAXAosInLPt2m1iKTFGdeSIc0ABE9AmrpW3EmP6kxiWF5PDLc6//q4Ni5JgZb2eZea7MTpfpGZvsbL4h1mYBRGNhomJ/SYAFrBNUF3anGW2aFa+tZVijPrFO7+CaY3qT0mP1P7oZxzMn2mkaDS5VmL+F0djmk1K8DLTKjQaLkZX8HPLzvOzuHh1AD+M53xJMSYP7KUrKythKNfX1+fn5kul0i/fWbzyoVWpVOwh+SbJWSp4qVTqz3d19aNzyyFXCFucTyTvwPKnfE15qY9RvjRVRM1SaVOZZDWeCs4ylLG3mMUYgJhea7uPP1pd65ZhdqpgpnzRGlkOF4RgvFdSwvf+fHG0+uh8taRWMdEYRlPCxIgbyQPDbyLRpqlP+N8x+JAGDhuS2eID6a2u/Qd9xUoHKhj65EA9kGBibW3VHNnyMFHuKgupzW9x+1x+pGFgo+bFLF6v1/sZeJocpbawLJZzZ4AGFP0coxwG5tvp9adQvfmOUw4DYELbJkbIOzrfOIrt1GGMNxqNnLBEts3RYwUvs08c6tWpzf+TH8E8QZxbZZHjWSq/ByZShzMOsyj0JjM74hPH/1FegpXJkoqWNmm+VCDmQkkx6TBpyknHQG1CX3J1bGoTiV7So0GVwtz6Zf+E3xH83z9+hCv/eF83ztU9rcB39H4QUgSUOoZqmuheRPyYGsoIr8oMegQXwjE1UnOgS5KzqB2XmYVrh9579/2gKc0Eh5XDiKIYWA65vkquaCSLUu448p6brxD8yy+PRmjgnfSR2btIm0tTB6ZcWl3O8TxMMYSHiP0k0wgGeoubEalcssKY+ZIuRi+bq+kD8yUnl/4XCrpIbQLHQ+S0CeThcG7OD80aoniuOaLVcs4ZF44jVlZWZmaOPdE4AAARpElEQVRmufbJG+iDbNYxhfBKXFpaMjXPHD8DvY9MfmSzCV89pY5zOZKJZFjbIk46p9GwfE06txzghTmsBHZqd8aXd1i+zZNMXqncYRIlmRYj4D2RG/m3OKdJzcDqzn3t6BWNSqXCuWh5+8vLy6VSCYoDAZD5l+3a7SsfWszqzinAj+95uTdHDwCO4JwJc1vH1B7ul5Uu0jaBw1QC6e3U7hBM0Dq8aV/MhWZD6a9OjAmjYT43fTXj1DGwJEa/5vgZHU90LzKdsnOa0UC5+vmZNN+B5TDQ892UFwKaTE4nrynXCElpg1/0c+aFkWpXJRrATUe1gbmbGdFX0kcG/gVmyGwZqHcHLemS/XtPhrW60bXwJtNzWemgrV8FFVTQpSGpfaOUPsB1yrMwA+m33cc7tTu4RvilC1ZQQQU9I3W02SvQx1M+40pHtq3j270HjnPU0W55UEThFFyERViEr1dIE7feOx+e4fQqJT2kbs4wCyqooEtA+njq7uE0051e5dFB3XEUK3Wsusdt+0od642ox/os7OJJ8aR48uo/cZVy6UwaJT0csT3lDlFlnO0PaMAlOrIXQQoqqKDXiAANUs84lOzejDPdPR04r8KP2rj/ww/M424KKqig15ACc/g3VkODc68aHrbSYRoylXJNVSIwTrMowiIswtclzI/0xk/T7+kYPwyM64MuWVwZBY070PD1VeDtwuMkKcSkc8yCSyt1NtrF+nobs7pfNm8XH1fSgwEhyGDimOSdzm9iMpi4rCGpVBkY6zuHczj9KgwUFzbgSE8qF9cp5jDisspL/SfQw+xllVca2oRUvlTdq3lfhDZxWUN9kFf3ZuBL2XrMPqMbUE/DuqwiEyjoa/JaA1976XxeoLyBMRKY0uHa3UKbmAom9BXvVKDUtoLLGPZHVP+E9hKRUd3dK3nl5ZUXpKHfN6u70CaeJcwAOI7irM9oU+5lpV61omueeOkj4fMITemo51wm9WGAyL2tmuLT3yFahFS4cRS33QNqQLnSvzSk179dWGEguI53Q10Cr31cKbdzGsVR3D7+WxzFQAqjil8JJi8wrpQLaDAq2gukHxTaxLOEmZ6mC6RzGgEswkv6wf4dqefqKvPBvbTyxlF8eHgYtWOpfY1Q6S+br+f1UdKDyFqP8MeddBTaxCiYUK5UPiYaUrktb39paQlHWs3MzF6+yC/fWWy7B+g2hJKdy3teQ9SO19fXW94+tX/U9Utn7DlR5zSCyG33MVQJqBXBtF6YL7+LvgohJnIUCcNwZmb2eVekGYKeRy6UckcfOfPp55/Nz83LXl8J9Jk4amFfgH7og4ZtRlTqGGvyQJyonakkUPKVOkYi2C40xU5HpY7DMHyaHCHlQHq4xmmiROIo3qnd4ZybF9Og/aNAJDkZquPmSRMXRE2UC27WiqM4+jmWzaZO8xiFH4YhsY3ixUN8kAIitCkjR5PKi2MrOeeSXKt1C5/y1q+X3kVfhXAYTJhF/ywbe+MoDsMQDQhtonnSpO4Uxa04alGLieJWGMqoHeNh86QZ/RzTr5PmG0dxFLdks4lG+fDBw7W11dnZwTCRu0hOKp/WfXKEfhVmZ6lmcxaM0gh7jGf6ZYqbiYyIK+k1Gg3aykym5TH/ToS7L4fARNdzxEDGCZiUeuKmF1B8siBKvS+LrAPGOouPtUklPXqHir0vnIwfqXyCCSRSrHQ8R5gIQ6mHRJfakDKG2XHiaAE0NmJgRIK0KxejjVRuGEpjxcGXygWg6GbUM8joRjk0d2I+0AvmaD2ACbLhQeokO8XEld2G0TWbDyS0okD7m+ikuv8l6naJSchgz6feGEy+NDgCJkJ9cR7h5hR8Sr3LAUAGQCSUpFJ9ciJpAYJmATl5BzbRKcoNIk8ME4U2MQVMqG4dZy9TrZvhwIc93Uzjvblir1ukj8YktUG+5e3TWCrzdTRujj35Uu9SLg49nZmZJR6oYyTJWd+ANmC5x8wdHGLOD4wz35FaXhM7xuTczD2KWzjbmdZlJi0HgOMImCBZAumTSjV+FrTgajYkqG9UzlAMUbb4xfOGCTJAm5iUpdHaRGGbuEiY6K+t/hFgvNGm69+pFXI/6O2lFElTZ1grmTRfpY4D6ZuJoPXMLcyZHUbqSUdfS81ayLCio4w6p1EgvbZ70DmNpPKbJ81Go1Gv1/GTxinf/LsZGRZPUydNHcc5Ir/JEaPuiHTG0SZUb/frl3pERvRE6f+a80qjXUlUoudlpY0y6YPjcdvtMJbk1JOOQpsYEQ6DiUEYn8fySUcbrES23cfIixy6Go0GVImWt1+v1+MoxrS5twFNqMX0iYYO069NACak8k0xNa4NhQl6p+Xt41Q13/NoYZXWXNW0ja3tPnYcUa1WMfBiE7QxTRg3HAETUdwye/h5o/qw0JXKjdqx4xw9OZFUJvV6nSoR65RSuY4jOOee5+NQ+yADdPfJibzAVl3YJl4oTFBBU4OYrruiz2Cw/fTzz3CHUKlUWl9fl8rfq+9VKhXf89LUcRzxi3d+tb6+Xq/XMaUPjDnwmGo2hTRIBtm4usE5x0pHb0vIYMKUyExEDQy1dFK5cdTarm0sLS3NzMwuLl793W9/32g0oAV0tbBcCsOS1SFKgzH+Q/1HqdzmSbPtHpAmP04KCEdMOgDTWgo/0G774ydOKlW9XuecHx4eKum13cctb39tbdX3jmmNBrlAokajQXMQJT3Vq2rlwkn5CaaedBTaxBQwoaTfrZ6uJk9dKJ+OGel9mM01wjBcX1+vVCrQz9vHf2OMf/7pZ3v1PXQGxxHMsnZ37zcajagd5waccfLK5WtqBGEYYlwdZsI0oTAHjsNgKI5aUCWE4GVmOc6RVG69Xt/c3HScI+Pl7mrCmNgaSK/tHqBTQV2XzS5MjJ+IPM82YZaVWWjjpExhGMowDG/cvN5oNODLS3Cg+1qPRFh7qtfrxMxIbeKCbROFNnGRMGE6w1Nxm71ozBCreoH0wzBkH/zbt9/+D/nS2jZnjDuO4Iw7jrAstvfgIQ1u5qyhedKcXC6/l393PJgYFZoRYBnG+Uql8u3eg6gdB9JLUwcdwN5iv3xncXZ23rLYvcMotTlnnHN29e3F2dl5LuwwlGkqysyaX5grlUpCOADKuYUFy2Lf7j1wHHGtvAVWsy43CUAjPmrSYfiYDZtxnJs+0oyjuFKpOM5RFLfCMHQcwZhoefuOI8rMmpmZRSHYuJ/Z5r/77e9xI9zcwtyXXx7RkDBpLQyMFysdLw4m0AeeHSaiuEX6+Uera1ATYKq0U8EsAbB479337x1GhkmcWPL72+7LggkzxMQbxgJmsR/qPwIdpHLT1Gm7B3EU1+v1zmm0Xbt97eMt3O381Z//Uq/Xt2sbjIuH3+9xzoRwAul10kdpmo3A6GaVSgWd7eH3e0p6tCd60qIY6TcRy65fwzSJ07/CMJxfmPvlO4vzc/MzM7PMshjjD7/f46zs+V4gvcPDQwwJWWjxb/ceYBpiWcx+kl5gqy5WOl4cTJA2YRb3dNoEpc8YD5pSNpuB9NruQds9YBazbW5ZXAhuMYZOgmOR+80EE4lG2PScYKLRaCjpYz5VqVTq9TqOP4F+EUgPA+ns7Px7776PvnHj5nUlvSQ5M9Uoar5QJUqlEvzKLYvhtUArL8EQbWJ0+IzaxDjljFkkZo6e70nlQg+CRPCUn1+YI4kAf0DVlrePi92DXo3gWcJCm3hxMHFR2gTW/JVyw1CurKw8fPAw0DYOjJlHjmBM2KmzXbtdqVQwv43i7krHdKI9b5iA4a3tHiTJ2fLy8sMHD7XBIvY833EEs9hfd78JQ4leAWED6TVPmo4jfvfb3wMm7Ccp2EhtAbhpnjRhyslm8sr/sf59GMpA+lOU/wvQJuCNDlUISZHWcOPmdYCmUm4Ut7raBBONRqPl7aepwywmbPsCW3Vhm3hxMHFR2kQgPThfxlG8vr7OOX9Yf4ghqMwszgV6S71eb3n77JPy5uam73tJcobmRZ180kb8vCcdMtuv4Yah/PzTz5aXl2HCDEO5vr4OUIAnqxDdIdROHTL4K+XysiWEI5Xb8vYD6S8vL9vCxqRM40vWw8lhafI+83y1iUB62KYBjEMi4Pzh93uwSYP/n+o/kpbBGfd8LwylLQRjvF6vvzCYKFY6LhImLkyb6C5n+ti6h4XDUql09+69MAwxa227BxhelpaWNjc3Pa873Xg1bROmC0MctTY3N7EDdXHx6trqqlS+4GWIuba6Ct2BMbFX38NKJ2fC873UFsyy8JoQjm1zZrG5hblSqVSpVNDc9+p7YRj6nqe9kibrzM9bm4Du4/keVrWVholr5a29+l7bfQwD7dzCXKVSsW3OmbBt/t6775dKpVKptLy8DFe0aXWZiWGi0CYuEiYuSpuQyk9TJwxDzGCVcn0v299hp86TEwmPPRg1oUHEURxk25z8KTqGye3znHSguGTbfdzp3ljpxlHL81yp/MzPWnpp6sCy8EP9xyhupanTdh8DZfCTVL65Ngkvgx/qP+pfM09tvWY0aZ95/tpE+qhzGnmeT6aTtnuAWRLkgnsVVnYbjUZmc2lKpdyWt493LrBVF16YLw4mLkqbkNrzIo7ilrePnoNuQxsiAunt1b/FgqLe+uGbrfbVhAlgRNSO0SuIyTAMG41Gmgq4TkJ89AcAIjCRGJPNplIu9CliPmrHjiPIA4pa+aR8vgBton38NyV9SIFiaXn7VJWB9P75r5+U9Or1Ogok0ymepJheYcBQkw8/w8JipeN5hK7Z/8NQGns6XLM1B0YBvvpE2Kc0HGzXNjhnMzOzGNzotTCUZp8JekfXC1SGc+GLqeLMvUp26xpZ4+Q78+F0cDwmpI5+5wIxQip3u7ZRrVbNWaca55C7QpsYr5KyMw7MPR1maw6kF7w+F6OZ1Q3fDXQY2tNB8BFIDxscdD/J9ZbXQ95h4XZtY3X1I5qtkNSACdmjTQzc3PH6hTu1Lzjnuul2NccnJyMvByy0iRGh2YBQRICJJyeSLu/o9+F/9SmQWaPHKl29Xt/dvY+N5GR9DLQuCuf0gITt3Tk2sNzMyKscN2GCqlvp5QmZHZmTjflDxobXKU7jgZLYJdwdDApt4tm0CUIK5UrlXn17MUnOdmp3tmu3t2sb27XbRPrha0C7u/d3d+9DhN3d+9/c/+/Nzc1qtTo/N9/dQCW9QHrY3yn1eTZ95fPaaxPGRF0r4fokPuwrMxSKic+zeNVC1bunIzCmHoVt4pm0iVyvmJmZ5ZxX9Ye/th+TeZJlaWmJuoGSnu9lMLFT+6IPBzcuHLxeClWrVdlzKle2E/Thg4cGmF4ewnhgwgdtVA0KbWJKmOg1brXdg1KpBM/8uYU5OA6Dcl9fcTJP057v/Unqoy6CzPXr+LVGw9Ef4KPvHUvl6gMm3EB6n37+Ged8de0/cmD68ji9sE+1Wv308898j1r4eJOOQpsYrU1QOaLbtN0D43RDc7bvZRaK14GknoRTxwh0PDtUqivRsdS73U2tKjD++zor4b7nuebJlDTvwPrrkxNpmmOCvtnHaxfmIhTHcmyhTUwTkgswrXLTqWqXkuKopXrbkJIendZLdGlKAEc5mI7eyrBbB0a9Xw4yF7BAEDMYbZsolUqMpx9whxzCggwm6FzWgnI09Ox5ItOzINBj1Cv1xOSzn/M3ic6vzTeBcD6Iwo3klpifm8/DxAfcYZ84tPEuDENcxFJQQQW9GZT5zkvARPm/SqXSAG3iyic2uc3j1JCXzXdBBRX04qjtHsBfnjHnCnPyk47FxauMp1eYAyyh4zoLKqigN4p+qP84FCaw0vEBd4KmDLDpqClfOscFFVTQi6cobg1e6Zidnf/3jx99wHGQqe972Y2mQa+5K+izgRVhERbhpQkD6TVPmvV6HTBx5UMrb5u4wpwyS/+TH93iNmMOY86vy4dllhZUUEFvDl370P51+dBiR1eYM/vWb/LahFX+ryvMscqiS+yo52tBBRX0ZtCVYbaJggoqqKAc9cBE8Sk+xaf4DPsUMFF8ik/xOefz/wHyyw1pbtjdswAAAABJRU5ErkJggg==&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 5: The Regular Expression Editor&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;For an example of using the RegularExpressionValidator server control to make sure that a value entered in a text box is an e-mail address, look at Listing 11.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 11: Validating an e-mail address&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet17&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Email: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RegularExpressionValidator id=&quot;RegularExpressionValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&quot;You must enter an email address&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ValidationExpression=&quot;\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RegularExpressionValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this example, notice that you place the Internet e-mail address regular expression in your &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ValidationExpression&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The great thing is that it is pretty simple, and it takes hardly any coding. Figure 6 shows the error message that results if a user enters an incorrect e-mail address in the text box. &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 6: Validating whether an e-mail address is entered in a text box&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: 5.0pt;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Note&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;The e-mail address is checked only to see whether it is in the correct format. The e-mail address is not checked in to ensure that it is an actual e-mail address.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;A great place on the Internet to find free regular expressions is the RegEx Library at&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Using Images for Your Error Messages&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One interesting way of showing your error messages when using validation controls is to use images along with text for identifying errors on your ASP.NET pages. This secret is not limited to the RegularExpressionValidator server control, but can be used with all the validation server controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To use an image instead of text for your error messages, you create something similar to the code in Listing 13.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 13: Using images for your validation messages&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet18&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Email: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RegularExpressionValidator id=&quot;RegularExpressionValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ErrorMessage=&#39;&amp;lt;img src=&quot;error.gif&quot;&amp;gt;&#39;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ValidationExpression=&quot;\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RegularExpressionValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To use an image instead of text for your error messages, you use an HTML string that points to the image that you want to display for the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property (see Figure 7).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 7: An image is displayed when the incorrect e-mail address is entered.&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The CustomValidator Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You are not limited to the validation controls that have been shown thus far in this article; you also have the CustomValidator server control. The CustomValidator server control enables you to develop your own custom server-side or client-side validations. At times, you may want to compare the user&#39;s input to a value in a database, or to determine whether his input conforms to some arithmetic validation that you are looking for (for instance, if the number is even or odd). You can do all this and more by using this type of validation control.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Client-side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One of the cool things about using the validation controls, in general, is that they allow for client-side validation of certain HTML server controls. As I said, you can create your own JavaScript functions that provide you with a higher level of validation capabilities.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 14 illustrates how to use JavaScript and the CustomValidator server control to expand upon the default validation capabilities that are provided to you with the .NET Framework.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 14: Creating your own client-side validation functions&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet19&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID NUMBER!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script language=&quot;JavaScript&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function validateNumber(oSrc, args) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (args.Value % 5 == 0);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be divisible by 5&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClientValidationFunction=&quot;validateNumber&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet20&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID NUMBER!&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;script language=&quot;JavaScript&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; function validateNumber(oSrc, args) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (args.Value % 5 == 0);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be divisible by 5&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ClientValidationFunction=&quot;validateNumber&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The important part of the CustomValidator server control here is the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The value of this property must be the client-side JavaScript function that is in the page—in this case, the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;validateNumber&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; function. By simply using this with the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, you have tied the validation process to the custom client-side function that you created, as illustrated in Figure 8.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 8: Performing a custom client-side validation using the CustomValidator server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You set the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;args.IsValid&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property to either &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; or &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;False&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; in the JavaScript function. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;args.Value&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is the value from the user that is retrieved from the control that the CustomValidator server control is tied to.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using the ClientValidationFunction property enables you to incorporate your own JavaScript functions into ASP.NET controls so that they behave like the other validation controls.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Server-side Validation&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The other way of performing validation on Web forms using the CustomValidator server control is to use server-side validation. This is just as easy as the client-side validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Server-side validation of your Web forms enables you to create rather elaborate validation capabilities. Listing 15 shows you a not-too-elaborate example of server-side checking. Here the code determines whether the number entered in the text box on the ASP.NET page is even.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 15: Creating your own server-side validation functions&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet21&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Page.IsValid Then&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID ENTRY!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub ValidateNumber(sender As Object, args As ServerValidateEventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Try&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim num As Integer = Integer.Parse(args.Value)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = ((num mod 5) = 0)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch ex As Exception&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = false&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be divisible by 5&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnServerValidate=&quot;ValidateNumber&quot;&amp;gt;&amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet22&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (Page.IsValid) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;VALID ENTRY!&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; void ValidateNumber(object source, ServerValidateEventArgs args)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int num = int.Parse(args.Value);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = ((num%5) == 0);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch(Exception ex)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = false;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Number: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ControlToValidate=&quot;TextBox1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ErrorMessage=&quot;Number must be even&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnServerValidate=&quot;ValidateNumber&quot;&amp;gt;&amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Button&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Performing custom server-side validation with the CustomValidator server controls requires that you use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;OnServerValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property instead of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. The &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ClientValidationFunction&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; is used with the CustomValidator server control when working with client-side validation.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In this case, you need to give the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;OnServerValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property a value that is equal to the name of the server-side function that you would write in one of the .NET-compliant languages.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Making Validation More Secure&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;If you are going to use the CustomValidator server control for client-side validation, you should also consider re-evaluating the user&#39;s input using a server-side validation function.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;It is not too hard for some people to post a form back to your server and bypass or fool the client-side validation. If you re-evaluate the input on the server, you can stop this from occurring, making your ASP.NET applications more secure.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using the CustomValidator server control to validate the Checkbox server control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;If you have been working through the examples so far in this article, note that there wasn&#39;t a validation server control in place that was able to validate the CheckBox server control. Don&#39;t be too worried. You can use the CustomValidator server control to work through this control. You can use it any time that a validation server control on your page is not using the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ControlToValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property. For an example of this, see Listing 16.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 16: Validating a check box&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; Visual Basic .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet23&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;VB&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub CustomValidator1_ServerValidate(source As Object, _&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args As ServerValidateEventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (CheckBox1.Checked = True)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub Button1_Click(sender As Object, e As EventArgs)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Page.IsValid Then&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Thank you for your donation!&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;&quot;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Check checkbox if you want to donate $10 &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CheckBox id=&quot;CheckBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Text=&quot;Donate $10&quot;&amp;gt;&amp;lt;/asp:CheckBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please donate $10&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OnServerValidate=&quot;CustomValidator1_ServerValidate&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Submit&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Visual C# .NET&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet24&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;%@ Page Language=&quot;C#&quot; %&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;script runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; void CustomValidator1_ServerValidate(Object source,&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServerValidateEventArgs args) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; args.IsValid = (CheckBox1.Checked == true);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; void Button1_Click(Object sender, EventArgs e) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (Page.IsValid) {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;Thank you for your donation!&quot;; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else {&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Label1.Text = &quot;&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Check checkbox if you want to donate $10 &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CheckBox id=&quot;CheckBox1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Text=&quot;Donate $10&quot;&amp;gt;&amp;lt;/asp:CheckBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:CustomValidator id=&quot;CustomValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;Please donate $10&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OnServerValidate=&quot;CustomValidator1_ServerValidate&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:CustomValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; Text=&quot;Submit&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/form&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Note that a CheckBox server control appears on the page. Also notice that there isn&#39;t a validation server control on the page that has this CheckBox server control tied to it via any property settings. Instead, a CustomValidator server control on the page references a server-side function called &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;CustomValidator1_ServerValidate&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Within this server-side function, validation performed in the code checks whether the CheckBox server control&#39;s &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Checked&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property has a value of &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; (meaning that it is checked). If the value of this property is &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, the CustomValidator server control is passed a &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;True&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value—meaning that the input passed the test.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The CustomValidator server control enables you to do almost any type of validations that you can think of. This is a great control to use if you do any database validations on the input that is entered into a form by a user. This control can also apply any complicated logic that you want to include in the validation process.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;The ValidationSummary Control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The ValidationSummary server control works with all the validation server controls on the page. It takes all the error messages that the other validation controls send back to the page and puts them all in one spot (that you specify) on the page. These error messages can be displayed in a list, bulleted list, or paragraph.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Showing a Bulleted List of Errors&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can use the ValidationSummary server control in a number of ways, but the example in Listing 17 shows you how to use it in a simple manner. For this example, two text boxes on the page are associated with a RequiredFieldValidator control. When an error is triggered, not only does it display the error next to the text box itself, it also displays it in a summary at the bottom of the ASP.NET page.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 17: Having a summary of errors appear on the screen&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet25&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;First name &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your first name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;Last name &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:TextBox id=&quot;TextBox2&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator2&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your last name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ControlToValidate=&quot;TextBox2&quot;&amp;gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Button id=&quot;Button1&quot; onclick=&quot;Button1_Click&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Text=&quot;Submit&quot;&amp;gt;&amp;lt;/asp:Button&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:ValidationSummary id=&quot;ValidationSummary1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; HeaderText=&quot;You received the following errors:&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/asp:ValidationSummary&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp; &amp;lt;asp:Label id=&quot;Label1&quot; runat=&quot;server&quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Using this kind of construct, when the validation server control is triggered, error messages similar to the ones shown in Figure 9 appear on the screen.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 9: Validation errors shown using the ValidationSummary server control&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By default, the ValidationSummary server control shows the errors in a bulleted list on the page using red text. You have the option to completely alter how output displays in the browser.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To change how the error messages are displayed, you can change the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DisplayMode&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property of the ValidationSummary control. The possible values of this control can be set to the following: &lt;/span&gt;&lt;/div&gt;&lt;ul type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l0 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;BulletList&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l0 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;List&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-list: l0 level1 lfo3; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; tab-stops: list .5in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;SingleParagraph&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;If you use the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;BulletList&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; value for the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;DisplayMode&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property, it appears as shown in Figure 11. If you use List, it appears without bullets. If you use &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;SingleParagraph&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, the errors appear in a text area all on one line in a single paragraph.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Showing a Dialog Box Containing Error Notifications&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;One flexible feature of the ValidationSummary server control is that you can easily show the ASP.NET page&#39;s errors in a pop-up dialog box. You have the option of showing the summary in the browser and the dialog box together, or just in the dialog box.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The property that controls whether the message appears in the browser is the&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; ShowSummary &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;property. To turn off the display of validation errors in the browser, set the value of the&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; ShowSummary &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;property to&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; False&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;. To show validation errors in a dialog box, set the ValidationSummary control&#39;s&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; ShowMessageBox &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;property to&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt; True &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;(see Listing 18).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 18: Showing errors in a dialog box&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet26&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:ValidationSummary id=&quot;ValidationSummary1&quot; runat=&quot;server&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ShowMessageBox=&quot;True&quot; ShowSummary=&quot;False&quot;&amp;gt;&amp;lt;/asp:ValidationSummary&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;This code produces results similar to those in Figure 10.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 10: A dialog box showing the page&#39;s validation errors&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 3;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 13.5pt;&quot;&gt;Understanding the Difference Between the ErrorMessage and Text Properties&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;In the examples shown so far using the ValidationSummary server control, the error messages were next to the items that were being validated (the RequiredFieldValidator server controls) and were displayed within the ValidationSummary server control. One ideal way of presenting this validation-error information is to have an asterisk (&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;*&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;) appear next to the HTML form fields in question, while the error messages stating what is wrong with the input appear in the list of errors shown within the ValidationSummary control.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;To accomplish this, you use the specific validation controls—not the ValidationSummary server control itself. For instance, if there is a RequiredFieldValidator server control validating a text box, you construct this validation control as shown in Listing 19.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Listing 19: Showing text differently than it is displayed in the ValidationSummary server control&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet27&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your first name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot;&amp;gt;*&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Or:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;a href=&quot;http://www.blogger.com/post-create.g?blogID=6844089548325201736&quot; name=&quot;CodeSpippet28&quot;&gt;&lt;/a&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;asp:RequiredFieldValidator id=&quot;RequiredFieldValidator1&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; runat=&quot;server&quot; ErrorMessage=&quot;You must enter your first name&quot; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp; ControlToValidate=&quot;TextBox1&quot; Text=&quot;*&quot;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;span style=&quot;color: black; font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;lt;/asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;By constructing the page&#39;s validation server controls, as shown here, using different values for the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; properties, you get a result similar to that shown in Figure 11.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Figure 11: Using different text for the validation error messages&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;When both the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; and &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; properties are used for the validation controls, the value of the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;ErrorMessage&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is displayed in the ValidationSummary server control&#39;s listing of validation errors, and the value assigned to the &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt; property is displayed in the validation control itself.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 2;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 18pt;&quot;&gt;Conclusion&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;You can do a lot with validation, far more than this article explains. Validation controls make a developer&#39;s life a lot easier. (To develop the same type of functionality in the past, a developer had to sometimes go to extreme JavaScript-coding measures.)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;The powerful thing about using these validation controls is that they are easy to implement. Modifying them is a piece of cake, so you can easily check for all sorts of parameters on the input generated from your forms.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Validation and Web controls make an outstanding combination for building smart forms.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto; mso-outline-level: 4;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;About the Author&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Bill Evjen is an active proponent of .NET technologies and community-based learning initiatives for .NET. He is a technical director for &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Reuters&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;, the international news and financial services company based in St. Louis, Missouri. Bill is the founder and executive director of the&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;which represents more than 100,000 members worldwide. Bill is also an author and speaker and has written such books as &lt;i&gt;ASP.NET Professional Secrets&lt;/i&gt;, &lt;i&gt;XML Web Services for ASP.NET&lt;/i&gt;, &lt;i&gt;Web Services Enhancements&lt;/i&gt;, and the &lt;i&gt;Visual Basic .NET Bible&lt;/i&gt; (all from &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;Wiley&lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt;&quot;&gt;© 2011 Microsoft. All rights reserved.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/7045977235984112079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/validating-aspnet-server-controls-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/7045977235984112079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/7045977235984112079'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/validating-aspnet-server-controls-on.html' title='Validating ASP.NET Server Controls on Asp.Net !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-5464661892849424749</id><published>2011-12-07T08:15:00.000-08:00</published><updated>2011-12-07T08:15:30.797-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Asp.Net"/><category scheme="http://www.blogger.com/atom/ns#" term="SQL Server 2008"/><title type='text'>SQL Server 2008 SP3 and HP Database Enterprise Appliance on ASP.NET !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;The list of updated features begins with an overall improved  upgrading experience from SQL Server’s older versions to the latest SQL  Server 2008 SP3 edition.&amp;nbsp; Microsoft has implemented measures that  provide enhanced performance and reliability while making the upgrade as  well.&amp;nbsp; Logs in SQL Server Integration Services will display the  aggregate number of rows transmitted in Data Flows, and enabling the  Shrink Database option will produce enhanced warning messages when  maintenance plan development takes place.&amp;nbsp; &lt;br /&gt;
Microsoft’s blog post  continues with the list of SP3 upgrades, noting that users should see  improvements when using Sequence Functions in a Parallel execution  plan.&amp;nbsp; Query outcomes are optimized when the indexed Spatial Data Type  column is referenced by the Database Tuning Advisor too.&amp;nbsp; Lastly, SP3  includes a fix to a recurring database problem when transparent data  encryption is enabled and now supplies availability should the  certificate be dropped.&lt;br /&gt;
You can download SQL Server 2008 SP3 in  its standard or Express version plus its Feature Pack via the Microsoft  Download Center.&amp;nbsp; The Feature Pack is described as a set of standalone  install packages that enhance the SQL Server 2008 SP3 experience.&amp;nbsp;  Microsoft is offering the upgrades free of charge to its customers.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;b&gt;Microsoft Teams with HP for SQL Server Appliance&lt;/b&gt;&lt;/strong&gt;&lt;br /&gt;
Last  week’s Microsoft Pass Summit 2011 was the setting for the announcement  that Microsoft would team up with HP to release the HP Enterprise  Database Consolidation Appliance for SQL Server.&amp;nbsp; The appliance will  become available in November, and it promises to offer the rapid  deployment and consolidated management of numerous database instances in  a virtualized private cloud environment.&lt;br /&gt;
Microsoft touts the HP  Enterprise Database Consolidation Appliance as an industry first.&amp;nbsp; Such a  claim comes from the fact that it can use integrated database migration  and management tools to supply database consolidation without having to  incur any application or database changes.&amp;nbsp; Customers will be able  experience the deployment of new database instances within minutes.&amp;nbsp; The  appliance offers several cost-cutting advantages over more traditional  database deployments as well.&amp;nbsp; In fact, Microsoft stated that the  elimination of the need for conventional infrastructure, floor space,  high energy usage, and more could translate into a savings of up to 75  percent in operational costs.&lt;br /&gt;
Although Microsoft referred to the  HP Enterprise Database Consolidation Appliance as the first in its  class, it appears to be obvious that it is being released to rival  Oracle’s Exadata, a database machine that currently has over 1,000  deployments.&amp;nbsp; Oracle’s competitors claim that most of Exadata’s  deployments have been used for consolidation in transactional  environments, but it can also be configured for data warehousing.&amp;nbsp;  According to InformationWeek, “The HP Enterprise Database Consolidation  Appliance is essentially the transactional-side counterpart to the HP  Enterprise Data Warehouse Appliance, which was introduced early this  year and runs Microsoft&#39;s SQL Server 2008 R2 Parallel Data Warehouse.”&lt;br /&gt;
The  HP Enterprise Database Consolidation Appliance will be offered in two  configurations to suit varying needs.&amp;nbsp; The full rack configuration comes  equipped with 400 hard drives, a 58 terabyte storage capacity, 192  logical processors, and 2 terabytes of RAM.&amp;nbsp; A half rack configuration  will be available as well.&amp;nbsp; A host of software will be included in each  package, beginning with various configuration, testing, and management  tools.&amp;nbsp; Microsoft will also supply clients with SQL Server Enterprise  Edition, Windows Server Datacenter 2008 R2, and Database Consolidation  2012.&amp;nbsp; Included virtualization templates should help users rapidly  deploy database instances of different sizes with ease.&amp;nbsp; &lt;br /&gt;
As for  compatibility, Microsoft assured its followers that the appliance will  work with SQL versions supported by Hyper-V, both old and new, including  next year’s upcoming SQL Server 2012.&amp;nbsp; Details on pricing have not yet  been released.&lt;br /&gt;
The Pass Summit 2011 was not used solely as a  springboard for Microsoft’s announcement on its upcoming consolidation  appliance project with HP, as the company also offered up other  SQL-related news.&amp;nbsp; A Windows-specific distribution of Hadoop will become  available in the future, as well as Microsoft’s SQL Azure Hadoop and  SQL Azure Federation cloud-based database services.&amp;nbsp; Both Azure services  will reportedly be released before 2012.&amp;nbsp; &lt;br /&gt;
Beyond the  announcements of future releases, the immediate availability of a pair  of community technology previews (CTP) was also revealed.&amp;nbsp; First up was  the SQL Azure Reporting service that puts Microsoft business  intelligence tools in developers’ hands for the creation and deployment  of app- or browser-embeddable reports.&amp;nbsp; The second service revealed, SQL  Azure Data Sync, allows users to synchronize both on-premise SQL Server  and SQL Azure databases in the cloud. &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/5464661892849424749/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/sql-server-2008-sp3-and-hp-database.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5464661892849424749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5464661892849424749'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/sql-server-2008-sp3-and-hp-database.html' title='SQL Server 2008 SP3 and HP Database Enterprise Appliance on ASP.NET !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-3090808245603546368</id><published>2011-12-07T08:10:00.000-08:00</published><updated>2011-12-07T08:10:30.146-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Asp.Net"/><category scheme="http://www.blogger.com/atom/ns#" term="NET LinkButton"/><title type='text'>.NET LinkButton web control on ASP.NET  !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;A web developer is routinely faced with the challenge of knowing which  link was clicked. The typical solution involves passing information on  the querystring in the clear, like this: &quot;GetProduct.asp?ID=3762&quot;. A key  benefit of the LinkButton web control is the power to know which link  was clicked by using POST rather than GET. This is accomplished by  setting 2 properties on the LinkButton: CommandName and CommandArgument.  These properties are passed into the onCommand event when the user  clicks a LinkButton. In the event handler for onCommand, the CommandName  and CommandArgument properties can be evaluated in CommandEventArgs.  Because this all takes place in the POST, the querystring is shorter and  the postback data is hidden. Let&#39;s begin by looking at some code.  First, a &quot;mini&quot; database of products is created in the code using two  instances of System.Collection.Hashtable. One hashtable stores the  ProductId and ProductTitle, and the other hashtable stores the ProductId  and ProductDescription. The two Hashtables are related by the  ProductId. This technique is OK for demonstration purposes; however,  there are cleaner ways to accomplish this.&lt;code&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
Hashtable&amp;nbsp;hashProductName&amp;nbsp;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Hashtable&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Hashtable&amp;nbsp;hashProductDesc&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Hashtable&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;();&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;void&amp;nbsp;BuildMiniDatabase&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Jalapeno&amp;nbsp;Dip&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Simmered&amp;nbsp;in&amp;nbsp;mayonaise&amp;nbsp;and&amp;nbsp;wine,&amp;nbsp;this&amp;nbsp;Jalapeno&amp;nbsp;Dip&amp;nbsp;will&amp;nbsp;make&amp;nbsp;your&amp;nbsp;eyes&amp;nbsp;water&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Smoked&amp;nbsp;Sausage&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Mouth&amp;nbsp;watering&amp;nbsp;and&amp;nbsp;delicious&amp;nbsp;sausage&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Shrimp&amp;nbsp;Fiesta&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;East&amp;nbsp;Coast&#39;s&amp;nbsp;finest&amp;nbsp;shrimp&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;3&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Jerk&amp;nbsp;Chicken&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;3&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;A&amp;nbsp;real&amp;nbsp;island&amp;nbsp;experience&amp;nbsp;you&amp;nbsp;will&amp;nbsp;not&amp;nbsp;forget&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;4&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Beer-Battered&amp;nbsp;Fish&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;4&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Pabst&amp;nbsp;Blue&amp;nbsp;Ribbon&amp;nbsp;and&amp;nbsp;Fish.&amp;nbsp;Wow!&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;5&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Bacon&amp;nbsp;Burger&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;5&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Big,&amp;nbsp;juicy,&amp;nbsp;and&amp;nbsp;bursting&amp;nbsp;with&amp;nbsp;flavor&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;6&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Sirloin&amp;nbsp;Tip&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;6&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Delicate&amp;nbsp;cuts&amp;nbsp;with&amp;nbsp;no&amp;nbsp;fat&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;7&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Baked&amp;nbsp;Alaska&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;7&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Fine&amp;nbsp;dessert&amp;nbsp;comprised&amp;nbsp;of&amp;nbsp;sponge&amp;nbsp;cake&amp;nbsp;topped&amp;nbsp;with&amp;nbsp;ice&amp;nbsp;cream&amp;nbsp;and&amp;nbsp;covered&amp;nbsp;with&amp;nbsp;meringue.&amp;nbsp;The&amp;nbsp;meringue&amp;nbsp;is&amp;nbsp;browned&amp;nbsp;before&amp;nbsp;the&amp;nbsp;ice&amp;nbsp;cream&amp;nbsp;can&amp;nbsp;melt.&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;8&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Fried&amp;nbsp;Chicken&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;8&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Country&amp;nbsp;cookin&#39;&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;9&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Fresh&amp;nbsp;Garden&amp;nbsp;Salad&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;9&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Crispy&amp;nbsp;iceberg&amp;nbsp;lettuce&amp;nbsp;and&amp;nbsp;a&amp;nbsp;garden&amp;nbsp;of&amp;nbsp;vegtables&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;One&amp;nbsp;Pea&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;]&amp;nbsp;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;A&amp;nbsp;single&amp;nbsp;green&amp;nbsp;pea&amp;nbsp;that&amp;nbsp;will&amp;nbsp;leave&amp;nbsp;you&amp;nbsp;craving&amp;nbsp;more&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
Next,  the web page layout is very basic. Inside a form, a table is built with  2 columns. The left side cell will hold the product links. The right  cell will display the product description.&lt;code&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;br /&gt;
&lt;span style=&quot;color: #007700;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;form&amp;nbsp;id&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;MainForm&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;method&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;post&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;runat&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;server&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Table&amp;nbsp;CellPadding&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;6&amp;nbsp;CellSpacing&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;2&amp;nbsp;BorderColor&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;#DDDDDD&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;BorderStyle&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Solid&amp;nbsp;BorderWidth&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;2&amp;nbsp;Runat&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;server&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;TableRow&amp;nbsp;Runat&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;server&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;TableCell&amp;nbsp;id&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;LinkList&amp;nbsp;Wrap&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;False&amp;nbsp;BackColor&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;#FFFFFF&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Runat&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;server&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;/&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;TableCell&amp;nbsp;id&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;tablecellMessage&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;CssClass&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;ProductDesc&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Runat&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;server&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;TableCell&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;TableRow&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Table&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;form&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;Now  that the web page is designed, the LinkButtons can be added. The  LinkButtons are added dynamically using code. The  System.Web.UI.WebControls.LinkButton control is instantiated and  assigned to _LB1. The Text property is used for rendering the hyperlink  label. That is, the text that sits between . The CommandName and  CommandArgument are what&#39;s it all about. Use the CommandArgument  property to specify an argument that complements the CommandName  property. What might have been placed on the querystring, will now  simply be assigned in the CommandName and/or CommandArgument properties.  In my example, I&#39;m really just using the CommandArgument property for  storing the ProductId of each product link. The CommandName is used to  identify my grouping of links which happen to be the same - they&#39;re all  products.&lt;code&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;br /&gt;
void&amp;nbsp;BuildLinkList&lt;span style=&quot;color: #007700;&quot;&gt;()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;for&amp;nbsp;(&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;int&amp;nbsp;i&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;i&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;&amp;lt;=&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;10&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;i&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;++)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;LinkButton&amp;nbsp;_LB1&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;LinkButton&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;_LB1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Text&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;i&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;].&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;ToString&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;_LB1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;CssClass&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;ProductLinks&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;_LB1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;CommandName&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;Products&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;_LB1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;CommandArgument&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;i&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;ToString&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;()&amp;nbsp;;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;The  onCommand event is fired when a user clicks a LinkButton. Because my  LinkButtons are added programatically, I need to wire the onCommand  event to the control and assign it to the OnLinkClick event handler.&lt;code&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;_LB1&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Command&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;+=&amp;nbsp;new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;System&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Web&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;UI&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;WebControls&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;CommandEventHandler&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;OnLinkClick&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;LinkList&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Controls&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Add&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;_LB1&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;LinkList&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Controls&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Add&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;(new&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;LiteralControl&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;&lt;br /&gt;
&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;));&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;When  the user clicks a product link, the OnLinkClick event handler will  determine which link was clicked, get the ProductId from the  CommandArgument property, retrieve the ProductDescription from the mini  database, and display the result on the web page. &lt;code&gt;&lt;span style=&quot;color: black;&quot;&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;void&amp;nbsp;OnLinkClick&lt;span style=&quot;color: #007700;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;object&amp;nbsp;O&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;System&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Web&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;UI&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;WebControls&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;CommandEventArgs&amp;nbsp;E&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;int&amp;nbsp;RecordId&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Int32&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Parse&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;E&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;CommandArgument&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;ToString&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;());&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;tablecellMessage&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;Text&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;&amp;lt;b&amp;gt;&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductName&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;RecordId&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;].&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;ToString&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;()&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;i&amp;gt;&quot;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;hashProductDesc&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;RecordId&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;].&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;ToString&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;()&amp;nbsp;+&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #dd0000;&quot;&gt;&quot;&amp;lt;/i&amp;gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700;&quot;&gt;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #0000bb;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;The LinkButton web control will most likely become a fundamental part of your ASP.Net programming. &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/3090808245603546368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/net-linkbutton-web-control-on-aspnet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/3090808245603546368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/3090808245603546368'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/12/net-linkbutton-web-control-on-aspnet.html' title='.NET LinkButton web control on ASP.NET  !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-124949568339909970</id><published>2011-11-23T10:20:00.000-08:00</published><updated>2011-11-23T10:20:04.148-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Validate uploaded image content in ASP.NET"/><title type='text'>Validate uploaded image content in ASP.NET  www.aspdotnetweb.blogspot.com !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;A very few day ago i had to face the situation where hacker uploaded the  malicious ASP script to the web server by changing its extension to  .JPG through user interface which allow user to upload image file.  Although developer team had put the validation on extension. But  unfortunately extension of ASP script was .JPG and hence it is allowed  extension. So hacker could upload that malicious script.&lt;br /&gt;
&lt;br /&gt;
After this situation i thought just checking only extension for uploaded  file is not the sufficient. We need to check content as well of the  uploaded file.&lt;br /&gt;
&lt;br /&gt;
So i decided to check header information in uploaded image file. If it  found valid header information then only save uploaded file otherwise  discard uploaded file.  After Digging couple of hour on&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; margin: auto auto auto 2.75pt;&quot;&gt;&lt;thead&gt;
&lt;tr&gt;&lt;td colspan=&quot;4&quot; style=&quot;background-color: transparent; border: 1pt solid black; padding: 2.75pt; width: 309.95pt;&quot; valign=&quot;top&quot; width=&quot;413&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Image  File Header Information Table&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/thead&gt; &lt;tbody&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;File  Format&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Offset&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Length&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Value&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;JPG  / JPEG&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0xFF,  0xD8, 0xFF, 0xE0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;PNG&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x89,  0x50, 0x4E, 0x47&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;TIF  / TIFF&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x49,  0x49, 0x2A, 0x00&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;GIF&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x47,  0x49, 0x46, 0x38&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;BMP&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;2&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x42,  0x4D&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;ICO&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt; &lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x00,  0x00, 0x01, 0x00&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
Instead of checking only header, we could also check whole file content  against its file format. But checking only header could serve our  purpose and it is also speedy process than checking whole file content  so i am not checking whole file content.&lt;br /&gt;
&lt;br /&gt;
Following code snippet validate header of known image types (JPG, PNG,  TIFF, GIF, BMP, ICO) Please do let me know if i have missed any image  types.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;NOTE:&lt;/b&gt; In code snippet &lt;b&gt;fuImage&lt;/b&gt; refer to ASP.NET file upload control&lt;br /&gt;
&lt;br /&gt;
--------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;01&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;keyword&quot;&gt;protected&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;btnUpload_Click(&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;object&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;sender, EventArgs e)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;02&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;03&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// DICTIONARY OF ALL IMAGE FILE HEADER&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;04&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;Dictionary&amp;lt;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[]&amp;gt; imageHeader = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;Dictionary&amp;lt;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[]&amp;gt;();&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;05&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;JPG&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0xFF, 0xD8, 0xFF, 0xE0 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;06&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;JPEG&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0xFF, 0xD8, 0xFF, 0xE0 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;07&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;PNG&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x89, 0x50, 0x4E, 0x47 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;08&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;TIF&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x49, 0x49, 0x2A, 0x00 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;09&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;TIFF&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x49, 0x49, 0x2A, 0x00 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;10&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;GIF&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x47, 0x49, 0x46, 0x38 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;11&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;BMP&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x42, 0x4D });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;12&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;ICO&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x00, 0x00, 0x01, 0x00 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;13&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;14&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] header;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;15&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(fuImage.HasFile)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;16&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;17&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// GET FILE EXTENSION&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;18&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;fileExt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;19&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;fileExt = fuImage.FileName.Substring(fuImage.FileName.LastIndexOf(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&#39;.&#39;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;) + 1).ToUpper();&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;20&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;21&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// CUSTOM VALIDATION GOES HERE BASED ON FILE EXTENSION IF ANY&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;22&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;23&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] tmp = imageHeader[fileExt];&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;24&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;header = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[tmp.Length];&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;25&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;26&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// GET HEADER INFORMATION OF UPLOADED FILE&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;27&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;fuImage.FileContent.Read(header, 0, header.Length);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;28&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;29&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(CompareArray(tmp, header))&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;30&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;31&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;lblMessage.Text = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Valid .&quot;&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;+ fileExt + &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot; file.&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;32&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// VALID HEADER INFORMATION &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;33&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// CODE TO PROCESS FILE&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;34&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;35&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;else&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;36&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;37&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;lblMessage.Text = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Invalid .&quot;&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;+ fileExt + &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot; file.&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;38&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// INVALID HEADER INFORMATION&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;39&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;40&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;41&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;else&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;42&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;43&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;lblMessage.Text = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Please select image file.&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;44&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;45&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;46&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;47&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;keyword&quot;&gt;private&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;bool&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;CompareArray(&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] a1, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] a2)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;48&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;49&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(a1.Length != a2.Length)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;50&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;return&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;false&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;51&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;52&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;for&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;int&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;i = 0; i &amp;lt; a1.Length; i++)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;53&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;54&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(a1[i] != a2[i])&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;55&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;return&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;false&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;56&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;57&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;58&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;return&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;true&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;59&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------------ &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/124949568339909970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/validate-uploaded-image-content-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/124949568339909970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/124949568339909970'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/validate-uploaded-image-content-in.html' title='Validate uploaded image content in ASP.NET  www.aspdotnetweb.blogspot.com !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-4821481319979368008</id><published>2011-11-23T10:07:00.000-08:00</published><updated>2011-11-23T10:07:36.989-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="resize and save in SQL database"/><category scheme="http://www.blogger.com/atom/ns#" term="Upload picture"/><title type='text'>Upload picture, resize and save in SQL database www.aspdotnetweb.blogspot.com !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;I have been looking for a solution for this all over the web and it took  me a couple of hours to figure it out. Finally I did it. So, here&#39;s my  code to upload a picture file using the fileupload control, resize the  file and then store it to a SQL Server  database.&lt;br /&gt;
&lt;br /&gt;
----------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;pln&quot;&gt;&amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;If&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FleUpload&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HasFile&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Then&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Dim&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;As&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HtmlEncode&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FleUpload&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Dim&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; extension &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;As&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Path&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;GetExtension&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;If&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;extension&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ToUpper&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;.JPG&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Or&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;extension&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ToUpper&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;.GIF&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Then&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&#39;**** Resize image section ****
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim image_file As System.Drawing.Image = System.Drawing.Image.FromStream(FleUpload.PostedFile.InputStream)
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim image_height As Integer = image_file.Height
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim image_width As Integer = image_file.Width
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim max_height As Integer = 120
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim max_width As Integer = 160


&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_height = (image_height * max_width) / image_width
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_width = max_width

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; If image_height &amp;gt; max_height Then
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_width = (image_width * max_height) / image_height
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_height = max_height
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Else
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; End If


&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim bitmap_file As New Bitmap(image_file, image_width, image_height)
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim stream As New System.IO.MemoryStream

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; bitmap_file.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg)
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; stream.Position = 0

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Dim data(stream.Length) As Byte
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; stream.Read(data, 0, stream.Length)
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &#39;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;****&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;End&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; resize image section &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;****&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;


&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Dim&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; myConn &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;As&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;New&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SqlConnection&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConfigurationManager&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConnectionStrings&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;cs&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConnectionString&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Dim&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; mycmd &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;As&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;New&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SqlCommand&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;se_equipmentimages_insert&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; myConn&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;CommandType&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;CommandType&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StoredProcedure&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Parameters&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AddWithValue&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;@equipment_id&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; id&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Parameters&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AddWithValue&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;@image_file&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; data&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Try&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; myConn&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Open&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ExecuteNonQuery&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Catch&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; ex &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;As&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Exception&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Finally&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; myConn&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Close&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;End&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Try&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Else&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;Please only upload .jpg or .gif files&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Visible&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;True&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;End&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;If&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Else&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;No file selected&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Visible&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;True&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;End&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;If&lt;/span&gt;&lt;/pre&gt;&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;typ&quot;&gt;------------------------------------------------------------------------&lt;/span&gt;&lt;/pre&gt;&lt;pre class=&quot;prettyprint&quot;&gt;EDIT: I found an online converter so not sure if this code would work, 
but could you please tell me where I am supposed to start the if 
statement?&lt;/pre&gt;&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;typ&quot;&gt;------------------------------------------------------------------------&lt;/span&gt;&lt;/pre&gt;&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FleUpload&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HasFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HtmlEncode&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FleUpload&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; extension &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Path&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;GetExtension&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;extension&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ToUpper&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;.JPG&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;|&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;extension&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ToUpper&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;.GIF&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;com&quot;&gt;//**** Resize image section ****&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Drawing&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Image&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_file &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Drawing&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Image&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FromStream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FleUpload&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;PostedFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;InputStream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_height &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_file&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Height&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_width &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_file&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Width&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; max_height &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;120&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; max_width &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;160&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_height &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;image_height &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; max_width&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_width&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_width &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; max_width&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;image_height &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; max_height&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_width &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;image_width &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;*&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; max_height&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;/&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_height&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; image_height &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; max_height&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Bitmap&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; bitmap_file &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Bitmap&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;image_file&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_width&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; image_height&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MemoryStream&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; stream &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MemoryStream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; bitmap_file&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Save&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;stream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Drawing&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Imaging&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ImageFormat&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Jpeg&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; stream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Position&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;byte&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;[]&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; data &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;byte&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;stream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Length&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;];&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; stream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Read&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; stream&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Length&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;com&quot;&gt;//**** End resize image section ****&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SqlConnection&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; myConn &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SqlConnection&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConfigurationManager&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConnectionStrings&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;cs&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConnectionString&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SqlCommand&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; mycmd &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SqlCommand&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;se_equipmentimages_insert&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; myConn&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;CommandType&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;CommandType&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StoredProcedure&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Parameters&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AddWithValue&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;@equipment_id&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; id&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Parameters&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AddWithValue&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;@image_file&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; data&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;try&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; myConn&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Open&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; mycmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ExecuteNonQuery&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;catch&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Exception&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; ex&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;finally&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; myConn&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Close&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;Please only upload .jpg or .gif files&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Visible&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;No file selected&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; lblError&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Visible&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;pun&quot;&gt;---------------------------------------------------------------------------&amp;nbsp;&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt; &lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/4821481319979368008/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/upload-picture-resize-and-save-in-sql.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/4821481319979368008'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/4821481319979368008'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/upload-picture-resize-and-save-in-sql.html' title='Upload picture, resize and save in SQL database www.aspdotnetweb.blogspot.com !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-7609083924321591040</id><published>2011-11-23T10:01:00.000-08:00</published><updated>2011-11-23T10:01:45.889-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Uploading images via .NET"/><title type='text'>Uploading images via .NET www.aspdotnetweb.blogspot.com !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;Previously, adding the ability to &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt; &lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt;s  via ASP (with sizing, thumbnail features, etc.) would have required the  use of an external component.  With the advent of .NET, the ability to  handle &lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt;s can be done easily and freely through the use of the Bitmap and &lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt; classes.&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we will be going through the steps of creating a simple web form in which you can &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt; an &lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt; file, and the form will verify whether it�&lt;br /&gt;
s a JPEG file, whether there are duplicate files already (and rename your &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt;ed file if necessary), and create a thumbnail of the file &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt;ed.&lt;br /&gt;
&lt;br /&gt;
This tutorial already assumes a basic knowledge of .NET Web Forms and C#.&lt;br /&gt;
By the way, some credit goes to Rajesh Sitapara for his code on &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt;ing.  If you need to &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt; the &lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt; into a DB, then look at his article.&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Create a new web application project.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Open up the web form.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Add a File field from the HTML tab onto your form, and convert  it into a server control.  In this example, the file field will be named  &lt;b&gt;fil&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;&lt;/b&gt;.&lt;br /&gt;
(To convert any HTML tag into a server control, right click on it and select &lt;b&gt;Run As Server Control&lt;/b&gt;.)&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Switch to &lt;b&gt;HTML view&lt;/b&gt; and add/alter the enctype attribute of the &lt;b&gt;form&lt;/b&gt; tag to multipart/form-data.&lt;br /&gt;
Example: enctype=&quot;multipart/form-data&quot;&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Add a Web Form &lt;b&gt;Button&lt;/b&gt; onto the form, and name it btn&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Add a folder called /&lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt;s to the web application.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Add a Web Form &lt;b&gt;&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;&lt;/b&gt; onto the form, and name it imgPicture.  Adjust the width to 160 and height to 120.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Add a &lt;b&gt;Label&lt;/b&gt; called lblOutput.  This will return any errors if the &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt; happens to fail.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;In the btn&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt; &lt;b&gt;Click&lt;/b&gt; event, add the following code.&lt;br /&gt;
(If you want to analyze the code in detail below, it&#39;s better to copy  and paste into the VS.NET IDE since some of the lines are long.)&lt;/li&gt;
&lt;/ol&gt;--------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;pre id=&quot;pre0&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-keyword&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;void&lt;/span&gt; btn&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;_Click(&lt;span class=&quot;code-keyword&quot;&gt;object&lt;/span&gt; sender, System.EventArgs e)
{
    &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Initialize variables
&lt;/span&gt;
    &lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; sSavePath;
    &lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; sThumbExtension;
    &lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; intThumbWidth;
    &lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; intThumbHeight;

    &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Set constant values
&lt;/span&gt;
    sSavePath = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;&lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt;s/&quot;&lt;/span&gt;;
    sThumbExtension = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;_thumb&quot;&lt;/span&gt;;
    intThumbWidth = &lt;span class=&quot;code-digit&quot;&gt;160&lt;/span&gt;;
    intThumbHeight = &lt;span class=&quot;code-digit&quot;&gt;120&lt;/span&gt;;

    &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; If file field isn�t empty
&lt;/span&gt;
    &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (fil&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;.PostedFile != &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;)
    {
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Check file size (mustn�t be 0)
&lt;/span&gt;
        HttpPostedFile myFile = fil&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;.PostedFile;
        &lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; nFileLen = myFile.ContentLength;
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (nFileLen == &lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;)
        {
            lblOutput.Text = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;No file was &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt;ed.&quot;&lt;/span&gt;;
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt;;
        }

        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Check file extension (must be JPG)
&lt;/span&gt;
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (System.IO.Path.GetExtension(myFile.FileName).ToLower() != &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;.jpg&quot;&lt;/span&gt;)
        {
            lblOutput.Text = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;The file must have an extension of JPG&quot;&lt;/span&gt;;
            &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt;;
        }

        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Read file into a data stream
&lt;/span&gt;
        &lt;span class=&quot;code-keyword&quot;&gt;byte&lt;/span&gt;[] myData = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;code-SDKkeyword&quot;&gt;Byte&lt;/span&gt;[nFileLen];
        myFile.InputStream.Read(myData,&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;,nFileLen);

        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Make sure a duplicate file doesn�t exist.  If it does, keep on appending an 
&lt;/span&gt;
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; incremental numeric until it is unique
&lt;/span&gt;
        &lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; sFilename = System.IO.Path.GetFileName(myFile.FileName);
        &lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; file_append = &lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;;
        &lt;span class=&quot;code-keyword&quot;&gt;while&lt;/span&gt; (System.IO.File.Exists(Server.MapPath(sSavePath + sFilename)))
        {
            file_append++;
            sFilename = System.IO.Path.GetFileNameWithoutExtension(myFile.FileName)
                             + file_append.ToString() + &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;.jpg&quot;&lt;/span&gt;;
        }

        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Save the stream to disk
&lt;/span&gt;
        System.IO.FileStream newFile
                = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; System.IO.FileStream(Server.MapPath(sSavePath + sFilename), 
                                           System.IO.FileMode.Create);
        newFile.Write(myData,&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;, myData.Length);
        newFile.Close();

        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Check whether the file is really a JPEG by opening it
&lt;/span&gt;
        System.Drawing.&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;.GetThumbnail&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;Abort myCallBack = 
                       &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; System.Drawing.&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;.GetThumbnail&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;Abort(ThumbnailCallback);
        Bitmap myBitmap;
        &lt;span class=&quot;code-keyword&quot;&gt;try&lt;/span&gt;
        {
            myBitmap = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Bitmap(Server.MapPath(sSavePath + sFilename));

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; If jpg file is a jpeg, create a thumbnail filename that is unique.
&lt;/span&gt;
            file_append = &lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;;
            &lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; sThumbFile = System.IO.Path.GetFileNameWithoutExtension(myFile.FileName)
                                                     + sThumbExtension + &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;.jpg&quot;&lt;/span&gt;;
            &lt;span class=&quot;code-keyword&quot;&gt;while&lt;/span&gt; (System.IO.File.Exists(Server.MapPath(sSavePath + sThumbFile)))
            {
                file_append++;
                sThumbFile = System.IO.Path.GetFileNameWithoutExtension(myFile.FileName) + 
                               file_append.ToString() + sThumbExtension + &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;.jpg&quot;&lt;/span&gt;;
            }

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Save thumbnail and output it onto the webpage
&lt;/span&gt;
            System.Drawing.&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt; myThumbnail
                    = myBitmap.GetThumbnail&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;(intThumbWidth, 
                                                 intThumbHeight, myCallBack, &lt;span class=&quot;code-SDKkeyword&quot;&gt;IntPtr&lt;/span&gt;.Zero);
            myThumbnail.Save (Server.MapPath(sSavePath + sThumbFile));
            imgPicture.&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;Url = sSavePath + sThumbFile;

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Displaying success information
&lt;/span&gt;
            lblOutput.Text = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;File &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt;ed successfully!&quot;&lt;/span&gt;;

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; Destroy objects
&lt;/span&gt;
            myThumbnail.Dispose();
            myBitmap.Dispose();
        }
        &lt;span class=&quot;code-keyword&quot;&gt;catch&lt;/span&gt; (ArgumentException errArgument)
        {
            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt; The file wasn&#39;t a valid jpg file
&lt;/span&gt;
            lblOutput.Text = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;The file wasn&#39;t a valid jpg file.&quot;&lt;/span&gt;;
            System.IO.File.Delete(Server.MapPath(sSavePath + sFilename));
        }
    }
}

&lt;span class=&quot;code-keyword&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;bool&lt;/span&gt; ThumbnailCallback()
{
    &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
}        
&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;Run the webpage, and test with JPG files and other files to test the error-checking mechanism.&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;If you have any problems/suggestions, please leave a message below. :-) &lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/7609083924321591040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/uploading-images-via-net.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/7609083924321591040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/7609083924321591040'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/uploading-images-via-net.html' title='Uploading images via .NET www.aspdotnetweb.blogspot.com !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-7168001991382760086</id><published>2011-11-23T09:54:00.000-08:00</published><updated>2011-11-23T09:54:49.185-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="How to Upload an Image Using ASP.NET"/><title type='text'>How to Upload an Image Using ASP.NET  www.aspdotnetweb.blogspot.com !</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTmjBRDJgJr-RdjtXblqkxrMGsth-owUZBdJmIbskVv_O5QuGuYRjZfucZLxrI92RrwlmzdM81dCilF3aZLsoJaWyr5wKGhV5hGjhX13IX5YZK5GJ_He8nsoEzchnxdbf1kCVHsKVqHKBV/s1600/simpleuploadimage_wallpape.in.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;410&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTmjBRDJgJr-RdjtXblqkxrMGsth-owUZBdJmIbskVv_O5QuGuYRjZfucZLxrI92RrwlmzdM81dCilF3aZLsoJaWyr5wKGhV5hGjhX13IX5YZK5GJ_He8nsoEzchnxdbf1kCVHsKVqHKBV/s640/simpleuploadimage_wallpape.in.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
This article is for beginners who want to learn how to &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt; &lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt;s.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Step 1:-&lt;/h2&gt;&lt;pre id=&quot;pre0&quot; lang=&quot;html&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-keyword&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;code-leadattribute&quot;&gt;input&lt;/span&gt; &lt;span class=&quot;code-attribute&quot;&gt;id&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;=&quot;&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;&quot;&lt;/span&gt; &lt;span class=&quot;code-attribute&quot;&gt;style&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;=&quot;&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;Z-INDEX: 102; LEFT: 104px; WIDTH: 288px; 
  POSITION: absolute; TOP: 64px; HEIGHT: 22px&quot;&lt;/span&gt; &lt;span class=&quot;code-attribute&quot;&gt;type&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;=&quot;&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;file&quot;&lt;/span&gt; 
  &lt;span class=&quot;code-attribute&quot;&gt;size&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;=&quot;&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;28&quot;&lt;/span&gt; &lt;span class=&quot;code-attribute&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;=&quot;&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;&quot;&lt;/span&gt; &lt;span class=&quot;code-attribute&quot;&gt;runat&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;=&quot;&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;server&quot;&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;&amp;gt;&lt;/span&gt; &lt;/pre&gt;&amp;nbsp;--------------------------------------------------------------------------------------&lt;br /&gt;
This control will &lt;span class=&quot;search-highlight&quot;&gt;upload&lt;/span&gt; your &lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt;.&amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;Step 2 :-&lt;/h2&gt;Create a &lt;code&gt;Button &lt;/code&gt;called &quot;&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;&quot; and another called&amp;nbsp;&quot;Load&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;&quot;.&amp;nbsp; Add the &lt;code&gt;DataGrid &lt;/code&gt;and do required bindings. &lt;br /&gt;
&lt;h2&gt;Step 3 :-&lt;/h2&gt;Lets see some sample code now.&lt;br /&gt;
&lt;br /&gt;
----------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;pre id=&quot;pre1&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-keyword&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;void&lt;/span&gt; Button1_Click(&lt;span class=&quot;code-keyword&quot;&gt;object&lt;/span&gt; sender, System.EventArgs e)
    {
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;It verifies if the archive exists 
&lt;/span&gt;
        &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (&lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;.PostedFile != &lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;)
        {
            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;To create a PostedFile
&lt;/span&gt;
            HttpPostedFile File = &lt;span class=&quot;search-highlight&quot;&gt;Upload&lt;/span&gt;.PostedFile;

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Create byte Array with file len
&lt;/span&gt;
            &lt;span class=&quot;code-keyword&quot;&gt;byte&lt;/span&gt;[] Data = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;code-SDKkeyword&quot;&gt;Byte&lt;/span&gt;[File.ContentLength];
            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;force the control to load data in array
&lt;/span&gt;
            File.InputStream.Read(Data,&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;,File.ContentLength);
                
            &lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; i = &lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;;

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Dysplay array data in textbox
&lt;/span&gt;
            &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; (i=0;i&amp;lt;Data.Length;i++)
            {
                TextBox1.Text += Data[i].ToString();  
            }

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Create procedure parameter
&lt;/span&gt;
            &lt;span class=&quot;code-keyword&quot;&gt;object&lt;/span&gt;[] obj = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;object&lt;/span&gt;[&lt;span class=&quot;code-digit&quot;&gt;1&lt;/span&gt;]; 

            obj[&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;] = Data;

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Execute the procedure with Microsoft.ApplicationBlocks.Data
&lt;/span&gt;
            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Simple procedure
&lt;/span&gt;
            &lt;span class=&quot;code-comment&quot;&gt;/*&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;CREATE PROCEDURE sp_img(@img &lt;span class=&quot;search-highlight&quot;&gt;image&lt;/span&gt;)  AS

            insert into tb_img values(@img)*/&lt;/span&gt;

            &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;record data
&lt;/span&gt;
            SqlHelper.ExecuteNonQuery(connectionString,&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;sp_img&quot;&lt;/span&gt;,obj);       

        }
    }

    &lt;span class=&quot;code-keyword&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;void&lt;/span&gt; Button2_Click(&lt;span class=&quot;code-keyword&quot;&gt;object&lt;/span&gt; sender, System.EventArgs e)
    {
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Bind data to your grid
&lt;/span&gt;
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;more details consulting
&lt;/span&gt;
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Working DataGrid TemplateColumns and Bind this Columns 
&lt;/span&gt;
        DataSet ds = SqlHelper.ExecuteDataset(connectionString,
            &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;sp_load_img&quot;&lt;/span&gt;,&lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;);
        grid.DataSource  = ds.Tables[&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;].DefaultView;
        grid.ObjectName = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;1&quot;&lt;/span&gt;;
        grid.FieldName = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;img&quot;&lt;/span&gt;;
        grid.Editable = &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
        grid.DataBind();
        grid.DataBindObjects(grid,ds,&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;,grid.PageSize);  

        &lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; i =0;

        &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; (i=0;i&amp;lt;ds.Tables[&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;].Rows.Count;i++)
        {
                        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;test your bitmap is valid 
&lt;/span&gt;
                        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Demonstration
&lt;/span&gt;
            &lt;span class=&quot;code-keyword&quot;&gt;byte&lt;/span&gt;[] bits = (&lt;span class=&quot;code-keyword&quot;&gt;byte&lt;/span&gt;[]) ds.Tables[&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;].Rows[i]
                [&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;img&quot;&lt;/span&gt;];  
            MemoryStream memorybits = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; MemoryStream(bits);
            Bitmap bitmap = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; Bitmap(memorybits);
        }

 
    }

    &lt;span class=&quot;code-keyword&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;void&lt;/span&gt; grid_PageIndexChanged(&lt;span class=&quot;code-keyword&quot;&gt;object&lt;/span&gt; source, 
           System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
    {
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Page your grid
&lt;/span&gt;
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Bind data to your grid
&lt;/span&gt;
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;more details consulting
&lt;/span&gt;
        &lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Working DataGrid TemplateColumns and Bind this Columns 
&lt;/span&gt;
        grid.CurrentPageIndex =e.NewPageIndex; 
        DataSet ds = SqlHelper.ExecuteDataset(connectionString,
            &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;sp_load_img&quot;&lt;/span&gt;,&lt;span class=&quot;code-keyword&quot;&gt;null&lt;/span&gt;);
        grid.DataSource  = ds.Tables[&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;].DefaultView;
        grid.ObjectName = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;&lt;span class=&quot;search-highlight&quot;&gt;Image&lt;/span&gt;1&quot;&lt;/span&gt;;
        grid.FieldName = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;img&quot;&lt;/span&gt;;
        grid.Editable = &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
        grid.DataBind();
        grid.DataBindObjects(grid,ds,e.NewPageIndex,grid.PageSize);  
        
    }
}&lt;/pre&gt;&lt;pre id=&quot;pre1&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;------------------------------------------------------------------------------------------- &lt;/pre&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/7168001991382760086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/how-to-upload-image-using-aspnet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/7168001991382760086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/7168001991382760086'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/11/how-to-upload-image-using-aspnet.html' title='How to Upload an Image Using ASP.NET  www.aspdotnetweb.blogspot.com !'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTmjBRDJgJr-RdjtXblqkxrMGsth-owUZBdJmIbskVv_O5QuGuYRjZfucZLxrI92RrwlmzdM81dCilF3aZLsoJaWyr5wKGhV5hGjhX13IX5YZK5GJ_He8nsoEzchnxdbf1kCVHsKVqHKBV/s72-c/simpleuploadimage_wallpape.in.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-8067417957296599513</id><published>2011-09-01T11:15:00.000-07:00</published><updated>2011-09-01T11:15:06.231-07:00</updated><title type='text'>Google Plus +1 Button How to add Google +1 Button to a Website</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgprMDfmW6x-IxZJ54mVgA13qwqHzEgzf4TRhIY1Ez5qyhAbY4YNrS_qtOziPJBQMw7PEoArLcedtoyNOGYgHSFkbjTA91QRv_Pp2UvWc-0i25XeBk89cs8Pj4RbH2pD_5sFpx3kKj8DoVX/s1600/icon.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgprMDfmW6x-IxZJ54mVgA13qwqHzEgzf4TRhIY1Ez5qyhAbY4YNrS_qtOziPJBQMw7PEoArLcedtoyNOGYgHSFkbjTA91QRv_Pp2UvWc-0i25XeBk89cs8Pj4RbH2pD_5sFpx3kKj8DoVX/s1600/icon.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b style=&quot;color: #20124d;&quot;&gt;This code is 15 px size google pluse Button ! &lt;/b&gt;&lt;br /&gt;
&amp;lt;!-- Place this tag where you want the +1 button to render --&amp;gt;&lt;br /&gt;
&amp;lt;g:plusone size=&quot;small&quot; annotation=&quot;inline&quot; href=&quot;http://aspdotnetweb.blogspot.com/&quot;&amp;gt;&amp;lt;/g:plusone&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Place this render call where appropriate --&amp;gt;&lt;br /&gt;
&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;&lt;br /&gt;
&amp;nbsp; (function() {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; var po = document.createElement(&#39;script&#39;); po.type = &#39;text/javascript&#39;; po.async = true;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; po.src = &#39;https://apis.google.com/js/plusone.js&#39;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; var s = document.getElementsByTagName(&#39;script&#39;)[0]; s.parentNode.insertBefore(po, s);&lt;br /&gt;
&amp;nbsp; })();&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;b style=&quot;color: #351c75;&quot;&gt;This code copy and past your site !&lt;/b&gt; &lt;br /&gt;
--------------------------------------&lt;br /&gt;
&lt;div style=&quot;color: #20124d;&quot;&gt;&lt;b&gt;This code is 60 px size google pluse Button !&amp;nbsp;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;
&amp;lt;!-- Place this tag where you want the +1 button to render --&amp;gt;&lt;br /&gt;
&amp;lt;g:plusone size=&quot;tall&quot; annotation=&quot;inline&quot; href=&quot;http://aspdotnetweb.blogspot.com/&quot;&amp;gt;&amp;lt;/g:plusone&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Place this render call where appropriate --&amp;gt;&lt;br /&gt;
&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;&lt;br /&gt;
&amp;nbsp; (function() {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; var po = document.createElement(&#39;script&#39;); po.type = &#39;text/javascript&#39;; po.async = true;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; po.src = &#39;https://apis.google.com/js/plusone.js&#39;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; var s = document.getElementsByTagName(&#39;script&#39;)[0]; s.parentNode.insertBefore(po, s);&lt;br /&gt;
&amp;nbsp; })();&lt;br /&gt;
&amp;lt;/script&amp;gt;&amp;nbsp;&lt;br /&gt;
&lt;div style=&quot;color: #351c75;&quot;&gt;&lt;b&gt;This code copy and past your site !&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/8067417957296599513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/09/google-plus-1-button-how-to-add-google.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/8067417957296599513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/8067417957296599513'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/09/google-plus-1-button-how-to-add-google.html' title='Google Plus +1 Button How to add Google +1 Button to a Website'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgprMDfmW6x-IxZJ54mVgA13qwqHzEgzf4TRhIY1Ez5qyhAbY4YNrS_qtOziPJBQMw7PEoArLcedtoyNOGYgHSFkbjTA91QRv_Pp2UvWc-0i25XeBk89cs8Pj4RbH2pD_5sFpx3kKj8DoVX/s72-c/icon.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-9180781953538662061</id><published>2011-07-22T01:29:00.000-07:00</published><updated>2011-07-22T01:33:55.753-07:00</updated><title type='text'>How to write audio vedio converter code in asp.net (c#)</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;To convert to flv:&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;Button&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;ID&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;btn_Submit&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;runat&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;server&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;Submit&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;OnClick&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;btn_Submit_Click&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;FileUpload&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;ID&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;fileuploadImageVideo&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;runat&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;server&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;----------------------------------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Data&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Configuration&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Collections&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Security&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;WebControls&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;WebControls&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;WebParts&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HtmlControls&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;public&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;partial&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;class&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; _Default &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Page&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;private&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;bool&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ReturnVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; html &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Empty&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//rename if file already exists&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; inputPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outputPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; imgpath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Request&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;PhysicalApplicationPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Get the application path &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; inputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;OriginalVideo&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of the original file &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; outputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;ConvertVideo&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of the converted file &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; imgpath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;Thumbs&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of the preview file &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; filepath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MapPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;~/OriginalVideo/&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Exists&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;filepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; dotPos &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;LastIndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;.&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; namewithoutext &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Substring&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; dotPos&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; ext &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Substring&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;dotPos &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; fileName &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; namewithoutext &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;.&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; ext&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; filepath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MapPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;~/OriginalVideo/&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;try&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;this&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileuploadImageVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SaveAs&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;filepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;catch&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outPutFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; outPutFile &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;~/OriginalVideo/&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;this&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileuploadImageVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;PostedFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ContentLength&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileInfo&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; a &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MapPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;outPutFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;));&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;a&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Exists&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;long&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; b &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; a&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Length&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;i &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; b&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;


&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; cmd &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; -i \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; inputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Remove&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;IndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.flv&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConvertNow&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;cmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; imgargs &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; -i \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Remove&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;IndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;                       &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.flv&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; -f image2 -ss 1 -vframes 1 -s 280x200 -an \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; imgpath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Remove&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;IndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.jpg&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConvertNow&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;imgargs&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;


&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;true&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;private&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;void&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConvertNow&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; cmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; exepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Request&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;PhysicalApplicationPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Get the application path &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; exepath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;ffmpeg.exe&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Diagnostics&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Process&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; proc &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Diagnostics&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Process&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileName&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; exepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of exe that will be executed, only for &quot;filebuffer&quot; it will be &quot;flvtool2.exe&quot; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Arguments&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; cmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//The command which will be executed &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;UseShellExecute&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;CreateNoWindow&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;true&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;RedirectStandardOutput&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Start&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HasExited&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;protected&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;void&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; btn_Submit_Click&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;object&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; sender&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;EventArgs&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; e&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ReturnVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;this&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileuploadImageVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ToString&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;());&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;pun&quot;&gt;------------------------------&lt;/span&gt;&lt;/pre&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;Button&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;ID&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;btn_Submit&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;runat&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;server&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;Text&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;Submit&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;OnClick&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;btn_Submit_Click&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt; &lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt; &lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;asp&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;:&lt;/span&gt;&lt;span style=&quot;color: maroon; font-size: x-small;&quot;&gt;FileUpload&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;ID&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;fileuploadImageVideo&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: red; font-size: x-small;&quot;&gt;runat&lt;/span&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;=&quot;server&quot;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt; &lt;/span&gt; &lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt;----------------------------------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Data&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Configuration&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Collections&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Security&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;WebControls&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;WebControls&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;WebParts&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HtmlControls&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;using&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;public&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;partial&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;class&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; _Default &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Web&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;UI&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Page&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;private&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;bool&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ReturnVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; html &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Empty&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//rename if file already exists&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; inputPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outputPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; imgpath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Request&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;PhysicalApplicationPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Get the application path &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; inputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;OriginalVideo&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of the original file &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; outputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;ConvertVideo&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of the converted file &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; imgpath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;Thumbs&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of the preview file &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; filepath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MapPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;~/OriginalVideo/&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;File&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Exists&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;filepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; dotPos &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;LastIndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;.&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; namewithoutext &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Substring&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; dotPos&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; ext &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Substring&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;dotPos &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;lit&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; fileName &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; namewithoutext &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; j &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;.&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; ext&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; filepath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MapPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;~/OriginalVideo/&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;try&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;this&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileuploadImageVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;SaveAs&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;filepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;catch&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outPutFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; outPutFile &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;~/OriginalVideo/&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; i &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;this&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileuploadImageVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;PostedFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ContentLength&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileInfo&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; a &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;IO&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Server&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;MapPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;outPutFile&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;));&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;a&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Exists&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;long&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; b &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; a&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Length&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;i &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;!=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; b&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;


&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; cmd &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; -i \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; inputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Remove&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;IndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.flv&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConvertNow&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;cmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; imgargs &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; -i \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; outputPath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Remove&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;IndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.flv&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot; -f image2 -ss 1 -vframes 1 -s 280x200 -an \&quot;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; imgpath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Remove&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;IndexOf&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;))&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;.jpg&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;str&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;str&quot;&gt;\&lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConvertNow&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;imgargs&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;


&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;return&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;true&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;private&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;void&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ConvertNow&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; cmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; exepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;string&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Request&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;PhysicalApplicationPath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Get the application path &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; exepath &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;AppPath&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;st&quot;&gt;&lt;span class=&quot;str&quot;&gt;&quot;ffmpeg.exe&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Diagnostics&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Process&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; proc &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;new&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;System&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Diagnostics&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Process&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileName&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; exepath&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//Path of exe that will be executed, only for &quot;filebuffer&quot; it will be &quot;flvtool2.exe&quot; &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Arguments&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; cmd&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;cmt&quot;&gt;&lt;span class=&quot;com&quot;&gt;//The command which will be executed &lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;UseShellExecute&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;CreateNoWindow&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;true&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;StartInfo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;RedirectStandardOutput&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;Start&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;();&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;while&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;proc&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;HasExited&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;false&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;protected&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;void&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; btn_Submit_Click&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;object&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; sender&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;EventArgs&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt; e&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ReturnVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kwd&quot;&gt;&lt;span class=&quot;kwd&quot;&gt;this&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;fileuploadImageVideo&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;FileName&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;typ&quot;&gt;ToString&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;());&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;pln&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;pun&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;br /&gt;
&lt;pre class=&quot;prettyprint&quot;&gt;&lt;span class=&quot;pun&quot;&gt; &lt;/span&gt;&lt;/pre&gt;&lt;span style=&quot;color: blue; font-size: x-small;&quot;&gt; &lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/9180781953538662061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/how-to-write-audio-vedio-converter-code.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/9180781953538662061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/9180781953538662061'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/how-to-write-audio-vedio-converter-code.html' title='How to write audio vedio converter code in asp.net (c#)'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-4955606592574204836</id><published>2011-07-22T01:22:00.000-07:00</published><updated>2011-07-22T01:22:29.691-07:00</updated><title type='text'>File Download in ASP.NET and Tracking the Status of Success/Failure of Download</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;h2&gt;Introduction &lt;/h2&gt;This article demonstrates how to provide &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; of a file in &lt;span class=&quot;search-highlight&quot;&gt;ASP.NET&lt;/span&gt; along with tracking its success and failure. It will be useful especially in an e-commerce system that offers &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;able product option. In an e-commerce system, it is very important to keep &lt;strong&gt;track of status of &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;&lt;/strong&gt;. For a &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; option, there can be two scenarios:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;strong&gt;Complete/success &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;&lt;/strong&gt; &lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Failure &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;In an e-commerce system, the user may have a limited number of &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;s allowed which is one in most of the cases. If a &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; is successful, it should update the record which will indicate to the user that he has already &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;ed the file or increment the &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; count by 1. But for failure &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;, the user should be able to &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; it again or the &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; count should remain the same. So &lt;strong&gt;this article will help in tracking such status of &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;&lt;/strong&gt;. &lt;br /&gt;
While working on an e-commerce project, I had a requirement to implement such a functionality where the success/failure of the &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;  can be tracked. After searching for the solution, I found that there is  no such article related to a similar problem. Then I came up with this  solution after reading an article on &lt;strong&gt;transferring file in small packets&lt;/strong&gt;. I hope this solution will help others struggling with a similar problem. &lt;br /&gt;
&lt;h2&gt;Background &lt;/h2&gt;When the function provided is called on the click of a &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; button, a similar window as shown below opens asking the user to &lt;strong&gt;Open&lt;/strong&gt;, &lt;strong&gt;Save&lt;/strong&gt; or &lt;strong&gt;Cancel&lt;/strong&gt;. &lt;br /&gt;
&lt;img alt=&quot;Download_Track&quot; height=&quot;285&quot; src=&quot;http://www.codeproject.com/KB/aspnet/Download_Track/Download_Track1.jpg&quot; width=&quot;422&quot; /&gt;  Clicking &lt;em&gt;Open&lt;/em&gt; or &lt;em&gt;Save&lt;/em&gt; will result in start of &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; whereas &lt;em&gt;Cancel&lt;/em&gt; will stop/fail the &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;.&lt;br /&gt;
&lt;img alt=&quot;Download_Track2.jpg&quot; height=&quot;347&quot; src=&quot;http://www.codeproject.com/KB/aspnet/Download_Track/Download_Track2.jpg&quot; width=&quot;436&quot; /&gt;  A user can &lt;em&gt;Cancel&lt;/em&gt; the &lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt; even after &lt;em&gt;Open&lt;/em&gt; or &lt;em&gt;Save&lt;/em&gt; click, which needs to be tracked.&lt;br /&gt;
&lt;h2&gt;Using the &lt;span class=&quot;search-highlight&quot;&gt;Code&lt;/span&gt; &lt;/h2&gt;The &lt;span class=&quot;search-highlight&quot;&gt;code&lt;/span&gt; contains the basic logic of &lt;strong&gt;File &lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt; in &lt;span class=&quot;search-highlight&quot;&gt;ASP.NET&lt;/span&gt;&lt;/strong&gt;, which will not give end-user any hint of the location of the file. First we create &lt;code&gt;&lt;em&gt;System.IO.FileInfo&lt;/em&gt; &lt;/code&gt;object providing the complete file path, which will give us the file length. We also create a &lt;code&gt;&lt;em&gt;FileStream&lt;/em&gt; &lt;/code&gt;object which will be passed to &lt;code&gt;&lt;em&gt;BinaryReader&lt;/em&gt; &lt;/code&gt;object which in turn will help reading the data into bytes.&lt;br /&gt;
Then we use the &lt;code&gt;Response &lt;/code&gt;object to transfer the data.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain0&quot; style=&quot;display: block;&quot; width=&quot;100%&quot;&gt;&lt;span id=&quot;precollapse0&quot; style=&quot;cursor: pointer; margin-bottom: 0pt;&quot;&gt; &lt;/span&gt;&lt;/div&gt;&lt;pre id=&quot;pre0&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;File Path and File Name
&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; filePath = Server.MapPath(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;~/ApplicationData/&lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt;ableProducts&quot;&lt;/span&gt;);
&lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; _&lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt;ableProductFileName = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;&lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt;ableProduct_FileName.pdf&quot;&lt;/span&gt;;

System.IO.FileInfo FileName = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; System.IO.FileInfo(filePath + &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;\\&quot;&lt;/span&gt; + 
 _&lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt;ableProductFileName);
FileStream myFile = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; FileStream(filePath + &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;\\&quot;&lt;/span&gt; + 
 _&lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt;ableProductFileName, FileMode.Open, 
 FileAccess.Read, FileShare.ReadWrite);

&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Reads file as binary values
&lt;/span&gt;BinaryReader _BinaryReader = &lt;span class=&quot;code-keyword&quot;&gt;new&lt;/span&gt; BinaryReader(myFile);

&lt;span class=&quot;code-keyword&quot;&gt;long&lt;/span&gt; startBytes = &lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;;
&lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; lastUpdateTiemStamp = File.GetLastWriteTimeUtc(filePath).ToString(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;r&quot;&lt;/span&gt;);
&lt;span class=&quot;code-keyword&quot;&gt;string&lt;/span&gt; _En&lt;span class=&quot;search-highlight&quot;&gt;code&lt;/span&gt;dData = HttpUtility.UrlEn&lt;span class=&quot;search-highlight&quot;&gt;code&lt;/span&gt;
 (_&lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt;ableProductFileName, Encoding.UTF8) + lastUpdateTiemStamp; 

&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Clear the content of the response
&lt;/span&gt;Response.Clear();
Response.Buffer = &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
Response.AddHeader(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;Accept-Ranges&quot;&lt;/span&gt;, &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;bytes&quot;&lt;/span&gt;);
Response.AppendHeader(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;ETag&quot;&lt;/span&gt;, &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;\&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt; + _En&lt;span class=&quot;search-highlight&quot;&gt;code&lt;/span&gt;dData +&quot;\&quot;&quot;&lt;/span&gt;);
Response.AppendHeader(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;Last-Modified&quot;&lt;/span&gt;, lastUpdateTiemStamp);

&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Set the ContentType
&lt;/span&gt;Response.ContentType = &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;application/octet-stream&quot;&lt;/span&gt;;

&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Add the file name and attachment, 
&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;which will force the open/cancel/save dialog to show, to the header
&lt;/span&gt;Response.AddHeader(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;Content-Disposition&quot;&lt;/span&gt;, &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;attachment;filename=&quot;&lt;/span&gt;+ FileName.Name);

&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Add the file size into the response header
&lt;/span&gt;Response.AddHeader(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;Content-Length&quot;&lt;/span&gt;, (FileName.Length - startBytes).ToString());
Response.AddHeader(&lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;Connection&quot;&lt;/span&gt;, &lt;span class=&quot;code-string&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;code-string&quot;&gt;Keep-Alive&quot;&lt;/span&gt;);

&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Set the Content Encoding type
&lt;/span&gt;Response.ContentEncoding = Encoding.UTF8; 

&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Send data
&lt;/span&gt;_BinaryReader.BaseStream.Seek(startBytes, SeekOrigin.Begin);&lt;/pre&gt;&lt;pre id=&quot;pre0&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&amp;nbsp;&lt;/pre&gt;There is no response coming back from the &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; window whether &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; is completed or aborted in between, so it becomes more difficult to know the status of &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;.&lt;strong&gt; The basic logic behind tracking the &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt; status is transferring the file into smaller packets&lt;/strong&gt;(size of packets can be kept as per convenience) and &lt;strong&gt;checking whether all the packets have been transferred&lt;/strong&gt;.  If there will be any failure in between the transfer of file, the total  number of packets will be compared with the number of packets  transferred. This comparison will decide the status (Success/Failure) of  &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;.&lt;strong&gt; For a very small file, it is difficult to track failure of &lt;span class=&quot;search-highlight&quot;&gt;download&lt;/span&gt;&lt;/strong&gt; as the number of packets will be very few. So more effective tracking will happen if the file size will be greater than 10 KB.&lt;br /&gt;
In the below &lt;span class=&quot;search-highlight&quot;&gt;code&lt;/span&gt;, we are  getting the total number of packets by dividing the total bytes of data  by 1024 to keep the packet size as 1 KB.&lt;br /&gt;
To send the data packets one by  one, we are using &lt;em&gt;for&lt;/em&gt; &lt;em&gt;loop&lt;/em&gt;. Using &lt;code&gt;&lt;em&gt;Response.BinaryWrite&lt;/em&gt;&lt;/code&gt;, we are sending the 1024 bytes of data at a time which is read using &lt;code&gt;&lt;em&gt;BinaryReader&lt;/em&gt;&lt;/code&gt;. &lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain1&quot; style=&quot;display: block;&quot; width=&quot;100%&quot;&gt;&lt;img height=&quot;9&quot; id=&quot;preimg1&quot; src=&quot;http://www.codeproject.com/images/minus.gif&quot; style=&quot;cursor: pointer;&quot; width=&quot;9&quot; /&gt;&lt;span id=&quot;precollapse1&quot; style=&quot;cursor: pointer; margin-bottom: 0pt;&quot;&gt; Collapse&lt;/span&gt;&lt;/div&gt;&lt;pre id=&quot;pre1&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Dividing the data in 1024 bytes package
&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; maxCount = (&lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt;)Math.Ceiling((FileName.Length - startBytes + &lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;.&lt;span class=&quot;code-digit&quot;&gt;0&lt;/span&gt;) / &lt;span class=&quot;code-digit&quot;&gt;1024&lt;/span&gt;); &lt;/pre&gt;&lt;div class=&quot;pre-action-link&quot; id=&quot;premain2&quot; style=&quot;display: block;&quot; width=&quot;100%&quot;&gt;&lt;img height=&quot;9&quot; id=&quot;preimg2&quot; src=&quot;http://www.codeproject.com/images/minus.gif&quot; style=&quot;cursor: pointer;&quot; width=&quot;9&quot; /&gt;&lt;span id=&quot;precollapse2&quot; style=&quot;cursor: pointer; margin-bottom: 0pt;&quot;&gt; Collapse&lt;/span&gt;&lt;/div&gt;&lt;pre id=&quot;pre2&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;&lt;span class=&quot;search-highlight&quot;&gt;Download&lt;/span&gt; in block of 1024 bytes
&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;int&lt;/span&gt; i;
&lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt;(i=0; i &amp;lt; maxCount &amp;amp;&amp;amp; Response.IsClientConnected; i++)
{
    Response.BinaryWrite(_BinaryReader.ReadBytes(&lt;span class=&quot;code-digit&quot;&gt;1024&lt;/span&gt;));
    Respons.Flush(); 
}&lt;/pre&gt;Then we compare the number of data packets transferred with the total  number of data packets which we calculated by dividing file length by  1024. If both the parameters are equal, that means that file transfer is  successful and all the packets got transferred. If number of data  packets transferred are less than the total number of data packets, that  indicates there is some problem and the transfer was not complete.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain3&quot; style=&quot;display: block;&quot; width=&quot;100%&quot;&gt;&lt;span id=&quot;precollapse3&quot; style=&quot;cursor: pointer; margin-bottom: 0pt;&quot;&gt; &lt;/span&gt;&lt;/div&gt;&lt;pre id=&quot;pre3&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;compare packets transferred with total number of packets
&lt;/span&gt;&lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; (i &amp;lt; maxCount) &lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;false&lt;/span&gt;;
&lt;span class=&quot;code-keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;;  &lt;/pre&gt;Close the Binary reader and File stream in final block. &lt;br /&gt;
&lt;div class=&quot;pre-action-link&quot; id=&quot;premain4&quot; style=&quot;display: block;&quot; width=&quot;100%&quot;&gt;&lt;span id=&quot;precollapse4&quot; style=&quot;cursor: pointer; margin-bottom: 0pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;pre-action-link&quot; id=&quot;premain4&quot; style=&quot;display: block;&quot; width=&quot;100%&quot;&gt;&lt;span id=&quot;precollapse4&quot; style=&quot;cursor: pointer; margin-bottom: 0pt;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;pre id=&quot;pre4&quot; lang=&quot;cs&quot; style=&quot;margin-top: 0pt;&quot;&gt;&lt;span class=&quot;code-comment&quot;&gt;//&lt;/span&gt;&lt;span class=&quot;code-comment&quot;&gt;Close Binary reader and File stream
&lt;/span&gt;_BinaryReader.Close();
myFile.Close(); &lt;/pre&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/4955606592574204836/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/file-download-in-aspnet-and-tracking.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/4955606592574204836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/4955606592574204836'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/file-download-in-aspnet-and-tracking.html' title='File Download in ASP.NET and Tracking the Status of Success/Failure of Download'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-6922006463635534701</id><published>2011-07-22T01:17:00.000-07:00</published><updated>2011-07-22T01:17:37.970-07:00</updated><title type='text'>ASP.NET 4.0 : Visualize Response.RedirectPermanent</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot;&gt; &lt;div style=&quot;text-align: justify;&quot;&gt; In ASP.NET 4.0 there are new features that enable developer to make SEO  friendly websites very easily. And if you google out, you will find  plenty of article which explain this feature. But I am more interested  in &lt;b&gt;Response.RedirectPermanent&lt;/b&gt;. As the name suggest it is used to  redirect permanently moved resources to new location. And most of all  articles on the net just explain this with some example. But how can we  visualize that whether resource is redirected permanently or not. So  here is the answer for that. I have used FireBug to examine the same.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; Whenever we redirect with &lt;b&gt;Response.Redirect&lt;/b&gt;, we can see following activity in FireBug console.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt; &lt;a href=&quot;http://googlesearchinrjs.blogspot.com/&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhod39eu8LFIsVlRLl12YP9EhiUQesoI5pF_GCU7dIoMSdN1dTarw2RG25NSSnEt0V5zyHtI5TLhsCsbg5ycbE0eli4L2-J3Jnn7ktxMOSADxYcHQtEdz8DHAovWhl47yl4-0b4z7eY68Kf/s1600/Redirect.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; As we can see that page which issues &lt;b&gt;Response.Redirect&lt;/b&gt; its  response status code 302(Found) which means requested url(default.aspx)  is found but it is temporarily moved to about.aspx. More information on  HTTP status code can be found &lt;a href=&quot;http://googlesearchinrjs.blogspot.com/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; Now whenever we redirect with &lt;b&gt;Response.RedirectPermanent&lt;/b&gt;, we can see following activity in FireBug console.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt; &lt;a href=&quot;http://googlesearchinrjs.blogspot.com/&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzVSV5VCoPpN9B0wI_nmWjF9bM5MXQzenl7uyJDyCmSKBqx9JYvdmBCfy2GXmrXaJmTXor4sPCEWJHOzN_t3mOgPcet-ByXMHxNMOJxIaYD1plKORg3HebOavk_lfNhCq_3trufs-hwfOv/s1600/RedirectPermanent.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; As we can see that page which issues &lt;b&gt;Response.RedirectPermanent&lt;/b&gt;  its response status code 301(Moved Permanently) which means requested  url(default.aspx) is moved Permanently to about.aspx. 301 status code is  used by search engine crawler to update search index to new moved  information.&lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; &lt;/div&gt;&lt;div style=&quot;text-align: justify;&quot;&gt; I hope information provided here would be more helpful to distinguish between &lt;b&gt;Response.Redirect&lt;/b&gt; and &lt;b&gt;Response.RedirectPermanent&lt;/b&gt;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/6922006463635534701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/aspnet-40-visualize-responseredirectper.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6922006463635534701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6922006463635534701'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/aspnet-40-visualize-responseredirectper.html' title='ASP.NET 4.0 : Visualize Response.RedirectPermanent'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhod39eu8LFIsVlRLl12YP9EhiUQesoI5pF_GCU7dIoMSdN1dTarw2RG25NSSnEt0V5zyHtI5TLhsCsbg5ycbE0eli4L2-J3Jnn7ktxMOSADxYcHQtEdz8DHAovWhl47yl4-0b4z7eY68Kf/s72-c/Redirect.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-6875065149318865053</id><published>2011-07-22T01:13:00.000-07:00</published><updated>2011-07-22T01:13:26.523-07:00</updated><title type='text'>Send E-Mail from .NET application</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;.NET 2.0 has included  System.Net.Mail code namespace for supporting email programming with .NET&lt;br /&gt;
&lt;br /&gt;
Following is the code snippets for how to send mail from .NET application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;01&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;MailMessage mail = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;MailMessage();&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;02&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;mail.To.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;email1@email1.com&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;03&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;mail.To.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;email2@email2.com&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;04&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;comments&quot;&gt;// you can add even add more to address in the same way.&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;05&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;06&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;mail.From = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;MailAddress(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;from email address&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;07&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;comments&quot;&gt;// enter the email address. this address will show in the from field of recipient.&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;08&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;09&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;10&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;mail.Subject = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Email using .NET&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;11&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;Body = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Hi, this mail is to test sending mail&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;12&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;mail.Body = Body;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;13&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;mail.IsBodyHtml = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;true&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;14&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;15&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;SmtpClient smtp = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;SmtpClient();&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;16&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;smtp.Host = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;smtpserveraddress&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;; &lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;//Or Your SMTP Server Address&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;17&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;comments&quot;&gt;// enter you smtp server name.&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;18&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;19&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;smtp.Credentials = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;System.Net.NetworkCredential(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;smtp username&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;smtp password&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;20&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;comments&quot;&gt;//Or your Smtp Email ID and Password&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;21&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;22&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;smtp.EnableSsl = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;true&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;23&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;comments&quot;&gt;// if required &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;24&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;25&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;smtp.Send(mail);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/6875065149318865053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/send-e-mail-from-net-application.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6875065149318865053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6875065149318865053'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/send-e-mail-from-net-application.html' title='Send E-Mail from .NET application'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-6359361099246863527</id><published>2011-07-22T01:12:00.000-07:00</published><updated>2011-07-22T01:12:13.919-07:00</updated><title type='text'>Validate uploaded image content in ASP.NET</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot;&gt;A very few day ago i  had to face the situation where hacker uploaded the malicious ASP  script to the web server by changing its extension to .JPG through user  interface which allow user to upload image file. Although developer team  had put the validation on extension. But unfortunately extension of ASP  script was .JPG and hence it is allowed extension. So hacker could  upload that malicious script.&lt;br /&gt;
&lt;br /&gt;
After this situation i thought just checking only extension for uploaded  file is not the sufficient. We need to check content as well of the  uploaded file.&lt;br /&gt;
&lt;br /&gt;
So i decided to check header information in uploaded image file. If it  found valid header information then only save uploaded file otherwise  discard uploaded file.  After Digging couple of hour on http://www.wotsit.org(I am fan of&amp;nbsp; for more than 5 years), found following Header Information about different image file format.&lt;br /&gt;
&lt;br /&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; margin: auto auto auto 2.75pt;&quot;&gt;&lt;thead&gt;
&lt;tr&gt; &lt;td colspan=&quot;4&quot; style=&quot;background-color: transparent; border: 1pt solid black; padding: 2.75pt; width: 309.95pt;&quot; valign=&quot;top&quot; width=&quot;413&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Image  File Header Information Table&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/thead&gt; &lt;tbody&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;File  Format&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Offset&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Length&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableHeading&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt; font-style: normal;&quot;&gt;&lt;b&gt;Value&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;JPG  / JPEG&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0xFF,  0xD8, 0xFF, 0xE0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;PNG&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x89,  0x50, 0x4E, 0x47&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;TIF  / TIFF&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x49,  0x49, 0x2A, 0x00&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;GIF&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x47,  0x49, 0x46, 0x38&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;BMP&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;2&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x42,  0x4D&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 73.5pt;&quot; valign=&quot;top&quot; width=&quot;98&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;ICO&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 52.5pt;&quot; valign=&quot;top&quot; width=&quot;70&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) rgb(212, 208, 200) black black; border-style: none none solid solid; border-width: medium medium 1pt 1pt; padding: 2.75pt; width: 65.25pt;&quot; valign=&quot;top&quot; width=&quot;87&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/td&gt; &lt;td style=&quot;background-color: transparent; border-color: rgb(212, 208, 200) black black; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 2.75pt; width: 118.7pt;&quot; valign=&quot;top&quot; width=&quot;158&quot;&gt;&lt;div class=&quot;TableContents&quot; style=&quot;margin: 0in 0in 0pt;&quot;&gt;&lt;span style=&quot;font-family: Arial; font-size: 10pt;&quot;&gt;0x00,  0x00, 0x01, 0x00&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
Instead of checking only header, we could also check whole file content  against its file format. But checking only header could serve our  purpose and it is also speedy process than checking whole file content  so i am not checking whole file content.&lt;br /&gt;
&lt;br /&gt;
Following code snippet validate header of known image types (JPG, PNG,  TIFF, GIF, BMP, ICO) Please do let me know if i have missed any image  types.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;NOTE:&lt;/b&gt; In code snippet &lt;b&gt;fuImage&lt;/b&gt; refer to ASP.NET file upload control&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;syntaxhighlighter  &quot; id=&quot;highlighter_621164&quot;&gt;&lt;div class=&quot;lines&quot;&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;01&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;keyword&quot;&gt;protected&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;void&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;btnUpload_Click(&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;object&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;sender, EventArgs e)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;02&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;03&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// DICTIONARY OF ALL IMAGE FILE HEADER&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;04&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;Dictionary&amp;lt;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[]=&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;&amp;gt; imageHeader = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;Dictionary&amp;lt;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[]=&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;&amp;gt;();&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;05&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;JPG&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0xFF, 0xD8, 0xFF, 0xE0 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;06&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;JPEG&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0xFF, 0xD8, 0xFF, 0xE0 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;07&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;PNG&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x89, 0x50, 0x4E, 0x47 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;08&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;TIF&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x49, 0x49, 0x2A, 0x00 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;09&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;TIFF&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x49, 0x49, 0x2A, 0x00 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;10&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;GIF&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x47, 0x49, 0x46, 0x38 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;11&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;BMP&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x42, 0x4D });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;12&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;imageHeader.Add(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;ICO&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] { 0x00, 0x00, 0x01, 0x00 });&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;13&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;14&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] header;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;15&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(fuImage.HasFile)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;16&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;17&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// GET FILE EXTENSION&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;18&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;fileExt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;19&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;fileExt = fuImage.FileName.Substring(fuImage.FileName.LastIndexOf(&lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&#39;.&#39;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;) + 1).ToUpper();&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;20&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;21&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// CUSTOM VALIDATION GOES HERE BASED ON FILE EXTENSION IF ANY&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;22&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;23&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] tmp = imageHeader[fileExt];&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;24&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;header = &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;new&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[tmp.Length];&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;25&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;26&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// GET HEADER INFORMATION OF UPLOADED FILE&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;27&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;fuImage.FileContent.Read(header, 0, header.Length);&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;28&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;29&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(CompareArray(tmp, header))&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;30&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;31&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;lblMessage.Text = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Valid .&quot;&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;+ fileExt + &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot; file.&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;32&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// VALID HEADER INFORMATION &lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;33&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// CODE TO PROCESS FILE&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;34&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;35&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;else&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;36&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;37&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;lblMessage.Text = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Invalid .&quot;&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;+ fileExt + &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot; file.&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;38&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;comments&quot;&gt;// INVALID HEADER INFORMATION&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;39&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;40&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;41&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;else&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;42&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;43&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;lblMessage.Text = &lt;/code&gt;&lt;code class=&quot;string&quot;&gt;&quot;Please select image file.&quot;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;44&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;45&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;46&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;47&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;keyword&quot;&gt;private&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;bool&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;CompareArray(&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] a1, &lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;byte&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;[] a2)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;48&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;49&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(a1.Length != a2.Length)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;50&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;return&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;false&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;51&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;52&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;for&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;int&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;i = 0; i &amp;lt; a1.Length; i++)&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;53&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;{&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;54&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;if&lt;/code&gt; &lt;code class=&quot;plain&quot;&gt;(a1[i] != a2[i])&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;55&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;return&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;false&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;56&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;}&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;57&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt2&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;58&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;spaces&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;return&lt;/code&gt; &lt;code class=&quot;keyword&quot;&gt;true&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;line alt1&quot;&gt;&lt;table&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td class=&quot;number&quot;&gt;&lt;code&gt;59&lt;/code&gt;&lt;/td&gt;&lt;td class=&quot;content&quot;&gt;&lt;code class=&quot;plain&quot;&gt;}&amp;lt;/&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;,&amp;gt;&amp;lt;/&lt;/code&gt;&lt;code class=&quot;keyword&quot;&gt;string&lt;/code&gt;&lt;code class=&quot;plain&quot;&gt;,&amp;gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;Any input on above is greatly appreciated... &lt;/div&gt;&lt;hr /&gt;  &lt;span&gt;&lt;/span&gt;   &lt;hr /&gt;       &lt;div class=&quot;linkwithin_text&quot; id=&quot;linkwithin_text_0&quot; style=&quot;border: 0; font-weight: bold; margin: 0; padding: 20px 0 5px; text-align: left;&quot;&gt;         You might also like:     &lt;/div&gt;&lt;div class=&quot;linkwithin_posts&quot; style=&quot;border: 0; margin: 0; padding: 0;&quot;&gt;            &lt;a href=&quot;http://dotnetexpertguide.blogspot.com/2011/07/aspnet-40-visualize-responseredirectper.html&quot; name=&quot;linkwithin_link_0&quot; style=&quot;border-bottom: none; border-right: 1px solid #ddd; cursor: pointer; display: block; float: left; margin: 0; padding: 6px; text-align: left; text-decoration: none;&quot;&gt; &lt;div style=&quot;border: 0; height: 165px; margin: 0; padding: 0; width: 106px;&quot;&gt;  &lt;div class=&quot;linkwithin_img_0&quot; style=&quot;border: 1px solid #ddd; height: auto; margin: 0; padding: 2px; width: auto;&quot;&gt;         &lt;/div&gt;&lt;div class=&quot;linkwithin_title linkwithin_title_0&quot; style=&quot;border: 0pt none; color: #333333; font: 12px arial; margin: 3px 0pt 0pt; padding: 0pt;&quot;&gt;     ASP.NET 4.0 : Visualize Response.RedirectPermanent &lt;/div&gt;&lt;/div&gt;&lt;/a&gt;  &lt;a href=&quot;http://dotnetexpertguide.blogspot.com/2010/06/send-e-mail-from-net-application.html&quot; name=&quot;linkwithin_link_0&quot; style=&quot;border-bottom: none; border-right: 1px solid #ddd; cursor: pointer; display: block; float: left; margin: 0; padding: 6px; text-align: left; text-decoration: none;&quot;&gt; &lt;div style=&quot;border: 0; height: 165px; margin: 0; padding: 0; width: 106px;&quot;&gt;  &lt;div class=&quot;linkwithin_img_0&quot; style=&quot;border: 1px solid #ddd; height: auto; margin: 0; padding: 2px; width: auto;&quot;&gt;         &lt;/div&gt;&lt;div class=&quot;linkwithin_title linkwithin_title_0&quot; style=&quot;border: 0pt none; color: #333333; font: 12px arial; margin: 3px 0pt 0pt; padding: 0pt;&quot;&gt;     Send E-Mail from .NET application &lt;/div&gt;&lt;/div&gt;&lt;/a&gt;  &lt;a href=&quot;http://dotnetexpertguide.blogspot.com/2009/05/performing-delete-operation-with-client.html&quot; name=&quot;linkwithin_link_0&quot; style=&quot;border-bottom: none; border-right: 1px solid #ddd; cursor: pointer; display: block; float: left; margin: 0; padding: 6px; text-align: left; text-decoration: none;&quot;&gt; &lt;div style=&quot;border: 0; height: 165px; margin: 0; padding: 0; width: 106px;&quot;&gt;  &lt;div class=&quot;linkwithin_img_0&quot; style=&quot;border: 1px solid #ddd; height: auto; margin: 0; padding: 2px; width: auto;&quot;&gt;         &lt;/div&gt;&lt;div class=&quot;linkwithin_title linkwithin_title_0&quot; style=&quot;border: 0pt none; color: #333333; font: 12px arial; margin: 3px 0pt 0pt; padding: 0pt;&quot;&gt;     Performing delete operation with client script confirmation ... &lt;/div&gt;&lt;/div&gt;&lt;/a&gt;  &lt;a href=&quot;http://dotnetexpertguide.blogspot.com/2010/03/embed-javascript-file-in-net-assembly.html&quot; name=&quot;linkwithin_link_0&quot; style=&quot;background-color: #ddddee; border-bottom: medium none; cursor: pointer; display: block; float: left; margin: 0pt; padding: 6px; text-align: left; text-decoration: none;&quot;&gt; &lt;div style=&quot;border: 0pt none; height: 165px; margin: 0pt; padding: 0pt; width: 106px;&quot;&gt;  &lt;div class=&quot;linkwithin_img_0&quot; style=&quot;border: 1px solid #ddd; height: auto; margin: 0; padding: 2px; width: auto;&quot;&gt;         &lt;/div&gt;&lt;div class=&quot;linkwithin_title linkwithin_title_0&quot; style=&quot;border: 0pt none; color: #333333; font: 12px arial; margin: 3px 0pt 0pt; padding: 0pt;&quot;&gt;     EMBED JAVASCRIPT FILE IN ASP .NET ASSEMBLY &lt;/div&gt;&lt;/div&gt;&lt;/a&gt;&lt;a href=&quot;http://dotnetexpertguide.blogspot.com/2010/03/embed-javascript-file-in-net-assembly.html&quot; name=&quot;linkwithin_link_0&quot; style=&quot;background-color: #ddddee; border-bottom: medium none; cursor: pointer; display: block; float: left; margin: 0pt; padding: 6px; text-align: left; text-decoration: none;&quot;&gt;&lt;div style=&quot;border: 0; height: 165px; margin: 0; padding: 0; width: 106px;&quot;&gt;  &lt;/div&gt;&lt;/a&gt;        &lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/6359361099246863527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/validate-uploaded-image-content-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6359361099246863527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6359361099246863527'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/07/validate-uploaded-image-content-in.html' title='Validate uploaded image content in ASP.NET'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-4752777902068780189</id><published>2011-06-19T11:49:00.001-07:00</published><updated>2011-06-19T11:49:59.873-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CheckBox"/><title type='text'>CheckBox</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;h1 align=&quot;center&quot;&gt;CheckBox&lt;/h1&gt;&lt;div align=&quot;left&quot;&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://googlesearchinrjs.blogspot.com/&quot;&gt;The  CheckBox control is used to display a check box. &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;width: 564px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffcc00&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;&lt;strong&gt;Property&lt;/strong&gt;&lt;/td&gt;     &lt;td bgcolor=&quot;#ffcc00&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;AutoPostBack&lt;/td&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;A    Boolean value  that specifies whether the form should be posted immediately    after  the Checked property has changed or not. Default is false&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;Checked&lt;/td&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;A    Boolean value that specifies whether the check box is checked or not&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;id&lt;/td&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;A    unique id for the control&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;OnCheckedChanged&lt;/td&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;The    name of the function to be executed when the Checked property has changed&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;runat&lt;/td&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;Specifies    that the control is a server control.&amp;nbsp; Must be set to &quot;server&quot;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;Text&lt;/td&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;The    text next to the check box&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;144&quot;&gt;TextAlign&lt;/td&gt;     &lt;td bgcolor=&quot;#ffffcc&quot; valign=&quot;top&quot; width=&quot;420&quot;&gt;On    which side of the check box the text should appear (right or left)&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#66ccff&quot; valign=&quot;top&quot; width=&quot;248&quot;&gt;Try    this:&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;width: 566px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;1&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;script&amp;nbsp;    runat=&quot;server&quot;&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;2&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;nbsp;&amp;nbsp;    Sub Check(sender As Object, e As EventArgs) &lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;3&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;    if check1.Checked then&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;4&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; work.Text=home.Text&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;5&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;    else&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;6&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; work.Text=&quot;&quot;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;7&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;    end if&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;8&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;nbsp;&amp;nbsp;    End Sub&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;9&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;/script&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;10&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;html&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;11&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;body&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;12&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;form    runat=&quot;server&quot;&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;13&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;p&amp;gt;Home    Phone:&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;14&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;asp:TextBox    id=&quot;home&quot; runat=&quot;server&quot; /&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;15&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;br    /&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;16&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;Work    Phone:&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;17&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;asp:TextBox    id=&quot;work&quot; runat=&quot;server&quot; /&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;18&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;asp:CheckBox     id=&quot;check1&quot; Text=&quot;Same as home phone&quot;    TextAlign=&quot;Right&quot;  AutoPostBack=&quot;True&quot;    OnCheckedChanged=&quot;Check&quot; runat=&quot;server&quot; /&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;19&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;/p&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;20&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;/form&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;21&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;/body&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;39&quot;&gt;22&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;527&quot;&gt;&amp;lt;/html&amp;gt; &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div align=&quot;center&quot;&gt;   &lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;       &lt;td bgcolor=&quot;#66ccff&quot; valign=&quot;top&quot; width=&quot;238&quot;&gt;Save    as: Checkbox.aspx&lt;/td&gt;     &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;114&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/CheckboxImages/CheckBox_clip_image003.jpg&quot; width=&quot;422&quot; /&gt;&lt;br /&gt;
&lt;img height=&quot;18&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/CheckboxImages/CheckBox_clip_image004.gif&quot; width=&quot;389&quot; /&gt;&lt;/div&gt;&lt;img alt=&quot;Trty this is Visual Studio 2005&quot; height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/TryThisInVisualStudio.gif&quot; width=&quot;217&quot; /&gt; &lt;ul&gt;&lt;li&gt;Open Visual  Studio&lt;/li&gt;
&lt;li&gt;Add a new  webform&lt;/li&gt;
&lt;li&gt;Name it &lt;em&gt;checkbox.aspx&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Click the &lt;em&gt;Add&lt;/em&gt; button&lt;/li&gt;
&lt;li&gt;Select the &lt;em&gt;Design&lt;/em&gt; View&lt;/li&gt;
&lt;li&gt;Add 2 labels  and 2 textbox controls&lt;/li&gt;
&lt;li&gt;Add a checkbox  control&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;105&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/CheckboxImages/CheckBox_clip_image006.jpg&quot; width=&quot;395&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Change the  text of the labels to:&lt;/li&gt;
&lt;/ul&gt;&lt;em&gt;Home Phone:&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;Work Phone:&lt;/em&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Change the id  property of the textboxes to:&lt;/li&gt;
&lt;/ul&gt;&lt;em&gt;Home&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;Work&lt;/em&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Change the id  of the checkbox to:&lt;/li&gt;
&lt;/ul&gt;&lt;em&gt;Check1&lt;/em&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Change the  text of the checkbox to:&lt;/li&gt;
&lt;/ul&gt;&lt;em&gt;Same as home phone&lt;/em&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Change the  textAlign property to &lt;em&gt;right&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Change  AutoPostBack to &lt;em&gt;true&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;174&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/CheckboxImages/CheckBox_clip_image008.jpg&quot; width=&quot;184&quot; /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;img height=&quot;148&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/CheckboxImages/CheckBox_clip_image010.jpg&quot; width=&quot;185&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Double-click  the checkbox&lt;/li&gt;
&lt;li&gt;Add this code:&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;left&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If  Check1.Checked Then&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; work.Text = home.Text&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; work.Text = &quot;&quot;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;152&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/CheckboxImages/CheckBox_clip_image012.jpg&quot; width=&quot;444&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Test it by  pressing CTRL + F5&lt;/li&gt;
&lt;/ul&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/4752777902068780189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/checkbox.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/4752777902068780189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/4752777902068780189'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/checkbox.html' title='CheckBox'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-6327460562389830020</id><published>2011-06-19T11:45:00.001-07:00</published><updated>2011-06-19T11:45:51.943-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="DataSet Object in ADO.Net 2.0"/><title type='text'>DataSet Object in ADO.Net 2.0</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;h1&gt;DataSet  Object in ADO.Net 2.0 &lt;/h1&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt; &lt;br /&gt;
The dataset object is an  in-memory representation of data&lt;br /&gt;
The dataset object has a  collection of dataTables and dataRelation objects&lt;br /&gt;
The dataset can contain  one or more dataTables&lt;br /&gt;
Example:&lt;br /&gt;
The following example  shows how you can have two dataTables in a single dataset and add a  dataRelation&lt;br /&gt;
Add this line above the  page_load&lt;br /&gt;
Imports System.data&lt;br /&gt;
Add this to the page_load&lt;br /&gt;
&#39;create new dataset&lt;br /&gt;
Dim  ShoppingCart As New  DataSet(&quot;Cart&quot;)&lt;br /&gt;
&#39;create dataTable&lt;br /&gt;
Dim products As DataTable = ShoppingCart.Tables.Add(&quot;Products&quot;)&lt;br /&gt;
&#39;add columns&lt;br /&gt;
products.Columns.Add(&quot;product_ID&quot;, GetType(Guid))&lt;br /&gt;
products.Columns.Add(&quot;ProductName&quot;, GetType(String))&lt;br /&gt;
products.Columns.Add(&quot;Price&quot;, GetType(Integer))&lt;br /&gt;
products.Columns.Add(&quot;cat_id&quot;, GetType(Guid))&lt;br /&gt;
&#39;add primary key&lt;br /&gt;
products.PrimaryKey  = New DataColumn() {products.Columns(&quot;product_ID&quot;)}&lt;br /&gt;
&#39;create second dataTable&lt;br /&gt;
Dim category As DataTable = ShoppingCart.Tables.Add(&quot;category&quot;)&lt;br /&gt;
&#39;add columns&lt;br /&gt;
category.Columns.Add(&quot;cat_id&quot;, GetType(Guid))&lt;br /&gt;
category.Columns.Add(&quot;catName&quot;, GetType(String))&lt;br /&gt;
&#39;add primary key&lt;br /&gt;
category.PrimaryKey  = New DataColumn() {category.Columns(&quot;cat_id&quot;)}&lt;br /&gt;
&#39;create data relation&lt;br /&gt;
ShoppingCart.Relations.Add(&quot;shoppingcart_Products&quot;, _&amp;nbsp;&amp;nbsp; &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; category.Columns(&quot;cat_id&quot;),products.Columns(&quot;cat_id&quot;) )&lt;br /&gt;
Add some sample data&lt;br /&gt;
&#39;add data&lt;br /&gt;
Dim shop, cat As Guid&lt;br /&gt;
&#39;get new guids &lt;br /&gt;
shop =  Guid.NewGuid()&lt;br /&gt;
cat =  Guid.NewGuid()&lt;br /&gt;
&#39;add row to category table&lt;br /&gt;
category.Rows.Add(cat,  &quot;household&quot;)&lt;br /&gt;
&#39;Add row to products&lt;br /&gt;
products.Rows.Add(shop,  &quot;toaster&quot;, 25.21, cat)&lt;br /&gt;
&#39;get another guid&lt;br /&gt;
shop =  Guid.NewGuid()&lt;br /&gt;
&#39;Add another row to products&lt;br /&gt;
products.Rows.Add(shop,  &quot;microwave&quot;, 250.0, cat)&lt;br /&gt;
&#39;get another guid&lt;br /&gt;
shop =  Guid.NewGuid()&lt;br /&gt;
&#39;Add another row to products&lt;br /&gt;
products.Rows.Add(shop,  &quot;Silverware&quot;, 27.5, cat)&lt;br /&gt;
&#39;get two new guids&lt;br /&gt;
cat =  Guid.NewGuid()&lt;br /&gt;
shop = Guid.NewGuid()&lt;br /&gt;
&#39;add another row to category&lt;br /&gt;
category.Rows.Add(cat,  &quot;electronics&quot;)&lt;br /&gt;
&#39;Add another row to products&lt;br /&gt;
products.Rows.Add(shop,  &quot;television&quot;, 300.0, cat)&lt;br /&gt;
&#39;get another guid&lt;br /&gt;
shop =  Guid.NewGuid()&lt;br /&gt;
&#39;Add another row to products&lt;br /&gt;
products.Rows.Add(shop,  &quot;VCR&quot;, 250.0, cat) &lt;br /&gt;
Add 2 gridVIews to the webform&lt;br /&gt;
Add this code&lt;br /&gt;
&#39;bind to first gridView&lt;br /&gt;
GridView1.DataSource  = ShoppingCart&lt;br /&gt;
GridView1.DataMember  = &quot;products&quot;&lt;br /&gt;
GridView1.DataBind()&lt;br /&gt;
&#39;bind to second gridView&lt;br /&gt;
GridView2.DataSource  = ShoppingCart&lt;br /&gt;
GridView2.DataMember  = &quot;category&quot;&lt;br /&gt;
GridView2.DataBind()&lt;br /&gt;
Since a dataset can have more than one dataTable you must set the   datasource to the dataset and the dataMember to each dataTable&lt;br /&gt;
&lt;h2&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
Serialize dataSet as XML&lt;/h2&gt;Use the dataset’s writeXML method to serialize a  dataset to XML&lt;br /&gt;
Add this code&lt;br /&gt;
ShoppingCart.WriteXml(MapPath(&quot;Cart.xml&quot;))&lt;br /&gt;
Here is the XML is created:&lt;br /&gt;
&amp;lt;?xml version=&quot;1.0&quot; standalone=&quot;yes&quot;?&amp;gt;&lt;br /&gt;
&amp;lt;Cart&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;Products&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;product_ID&amp;gt;9e5ff882-9f22-4ca2-a114-84b93abac05d&amp;lt;/product_ID&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ProductName&amp;gt;toaster&amp;lt;/ProductName&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Price&amp;gt;25&amp;lt;/Price&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;cat_id&amp;gt;231a895d-0094-4cb5-bd82-c1ac40c1f0e9&amp;lt;/cat_id&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;/Products&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;Products&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;product_ID&amp;gt;4a13fd47-cfd1-4b78-a516-ea7c069b2ea2&amp;lt;/product_ID&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ProductName&amp;gt;microwave&amp;lt;/ProductName&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Price&amp;gt;250&amp;lt;/Price&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;cat_id&amp;gt;231a895d-0094-4cb5-bd82-c1ac40c1f0e9&amp;lt;/cat_id&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;/Products&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;Products&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;product_ID&amp;gt;5ae1f57d-8ee1-47f8-b32c-9629cb64e9ec&amp;lt;/product_ID&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ProductName&amp;gt;Silverware&amp;lt;/ProductName&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Price&amp;gt;28&amp;lt;/Price&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;cat_id&amp;gt;231a895d-0094-4cb5-bd82-c1ac40c1f0e9&amp;lt;/cat_id&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;/Products&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;Products&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;product_ID&amp;gt;9a14e5e7-c569-4ae1-8e76-a2809a6a8ed8&amp;lt;/product_ID&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ProductName&amp;gt;television&amp;lt;/ProductName&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Price&amp;gt;300&amp;lt;/Price&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;cat_id&amp;gt;c35ef4d4-b702-4fec-89b8-8620a24ffd24&amp;lt;/cat_id&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;/Products&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;Products&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;product_ID&amp;gt;84c059a2-0c18-472a-8bf2-3c1e5c679dd0&amp;lt;/product_ID&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;ProductName&amp;gt;VCR&amp;lt;/ProductName&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;Price&amp;gt;250&amp;lt;/Price&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;cat_id&amp;gt;c35ef4d4-b702-4fec-89b8-8620a24ffd24&amp;lt;/cat_id&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;/Products&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;category&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;cat_id&amp;gt;231a895d-0094-4cb5-bd82-c1ac40c1f0e9&amp;lt;/cat_id&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;catName&amp;gt;household&amp;lt;/catName&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;/category&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;category&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;cat_id&amp;gt;c35ef4d4-b702-4fec-89b8-8620a24ffd24&amp;lt;/cat_id&amp;gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;catName&amp;gt;electronics&amp;lt;/catName&amp;gt;&lt;br /&gt;
&amp;nbsp; &amp;lt;/category&amp;gt;&lt;br /&gt;
&amp;lt;/Cart&amp;gt;&lt;br /&gt;
&lt;h2&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt; &lt;br /&gt;
Adding DataType info to the XML  file&lt;/h2&gt;Change the last line to this&lt;br /&gt;
ShoppingCart.WriteXml(MapPath(&quot;Cart2.xml&quot;), XmlWriteMode.WriteSchema) &lt;br /&gt;
You can also put the schema info into a separate  file with the following code&lt;br /&gt;
ShoppingCart.WriteXml(MapPath(&quot;Cart.xml&quot;))&lt;br /&gt;
ShoppingCart.WriteXmlSchema(MapPath(&quot;cart.xsd&quot;)) &lt;br /&gt;
If you double-click on this file in solution  explorer you see&lt;br /&gt;
&lt;img height=&quot;151&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/ADO_Dataset/ADO_DataSet_clip_image003.jpg&quot; width=&quot;449&quot; /&gt;&lt;br /&gt;
&lt;h2&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
Serialize dataset as diffGram&lt;/h2&gt;A diffgram is an XML file with all the data from  your dataset&lt;br /&gt;
It also has the original datarow info&lt;br /&gt;
Add this code to create a diffgram:&lt;br /&gt;
ShoppingCart.WriteXml(MapPath(&quot;cartDiffGram.xml&quot;), _ &lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;XmlWriteMode.DiffGram)&lt;br /&gt;
A diffgram has all the datarow version info,  whether rows have been added, changed etc.&lt;br /&gt;
&lt;h2&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt; &lt;br /&gt;
Deserializing from a diffGram&lt;/h2&gt;You can use a diffgram to create a dataset from an  XML file&lt;br /&gt;
Dim fromXml As New DataSet()&lt;br /&gt;
&#39;create structure&lt;br /&gt;
fromXml.ReadXmlSchema(MapPath(&quot;cart.xsd&quot;))&lt;br /&gt;
&#39;populate from the XML file&lt;br /&gt;
fromXml.ReadXml(MapPath(&quot;cartDiffGram.xml&quot;))&lt;br /&gt;
&#39;bind to a third gridView &lt;br /&gt;
GridView3.DataSource  = fromXml&lt;br /&gt;
GridView3.DataBind()&lt;br /&gt;
&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/6327460562389830020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/dataset-object-in-adonet-20.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6327460562389830020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/6327460562389830020'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/dataset-object-in-adonet-20.html' title='DataSet Object in ADO.Net 2.0'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-8052642280637358457</id><published>2011-06-19T11:43:00.000-07:00</published><updated>2011-06-19T11:43:38.108-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP:Image"/><title type='text'>ASP:Image</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div&gt;                 &lt;h1 align=&quot;center&quot;&gt;&lt;a href=&quot;http://googlesearchinrjs.blogspot.com/&quot;&gt;&lt;strong&gt;ASP:Image&lt;/strong&gt;&lt;/a&gt;&lt;/h1&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;  &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;The  Image control is used to display an image. &lt;/li&gt;
&lt;/ul&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;width: 564px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffcc00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;&lt;strong&gt;Property&lt;/strong&gt;&lt;/td&gt;     &lt;td bgcolor=&quot;#ffcc00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;AlternateText&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;An    alternate text for the image&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;Enabled&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;Specifies    whether this control is enabled&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;Font&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;Specifies    the font for the alternate text&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;id&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;A    unique id for the control&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;ImageAlign&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;Specifies    the alignment of the image. Legal values are: &lt;br /&gt;
&lt;ul&gt;&lt;li&gt;NotSet &lt;/li&gt;
&lt;li&gt;AbsBottom &lt;/li&gt;
&lt;li&gt;AbsMiddle &lt;/li&gt;
&lt;li&gt;BaseLine &lt;/li&gt;
&lt;li&gt;Bottom &lt;/li&gt;
&lt;li&gt;Left &lt;/li&gt;
&lt;li&gt;Middle &lt;/li&gt;
&lt;li&gt;Right &lt;/li&gt;
&lt;li&gt;TextTop &lt;/li&gt;
&lt;li&gt;Top &lt;/li&gt;
&lt;/ul&gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;ImageUrl&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;The URL    of the image to display for the link&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;143&quot;&gt;runat&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;415&quot;&gt;Specifies    that the control is a server control.&amp;nbsp; Must be set to &quot;server&quot;&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;Download the following image:&lt;br /&gt;
&lt;a href=&quot;http://www.morosko.com/comics1.gif&quot;&gt;http://www.morosko.com/comics1.gif&lt;/a&gt;&lt;br /&gt;
save it to the c:\inetpub\wwwroot directory&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#a98700&quot; valign=&quot;top&quot; width=&quot;248&quot;&gt;      Try    this: &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; style=&quot;width: 566px;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;26&quot;&gt;1&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;540&quot;&gt;&amp;lt;html&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;26&quot;&gt;2&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;540&quot;&gt;&amp;lt;body&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;26&quot;&gt;3&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;540&quot;&gt;&amp;lt;form runat=&quot;server&quot;&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;26&quot;&gt;4&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;540&quot;&gt;&amp;lt;asp:Image    runat=&quot;server&quot; AlternateText=&quot;Ad&quot; ImageUrl=&quot;    comics1.gif &quot; /&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;26&quot;&gt;5&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;540&quot;&gt;&amp;lt;/form&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;26&quot;&gt;6&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;540&quot;&gt;&amp;lt;/body&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;26&quot;&gt;7&lt;/td&gt;     &lt;td bgcolor=&quot;#ffff00&quot; valign=&quot;top&quot; width=&quot;540&quot;&gt;&amp;lt;/html&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div align=&quot;center&quot;&gt;   &lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;       &lt;td bgcolor=&quot;#66ccff&quot; valign=&quot;top&quot; width=&quot;238&quot;&gt;Save    as: ImageEx.aspx&lt;/td&gt;     &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;alternate method in visual studio&quot; height=&quot;18&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/AltMethod.gif&quot; width=&quot;389&quot; /&gt;&lt;/div&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#a98700&quot; valign=&quot;top&quot; width=&quot;217&quot;&gt;      Try    this in Visual Studio: &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;ul&gt;&lt;li&gt;Open Visual  Studio&lt;/li&gt;
&lt;li&gt;Add a new  webform&lt;/li&gt;
&lt;li&gt;Name it &lt;em&gt;ImageEx.aspx&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Add an Image  control&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;ASP.Net Image control&quot; height=&quot;234&quot; src=&quot;http://www.learn-asp.net/ASPTraining/ASPImage/ASPImage.jpg&quot; width=&quot;228&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;In the properties  window change the AlternateText property to &lt;em&gt;Ad&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Add an existing  item and select the comics1.gif file&lt;/li&gt;
&lt;li&gt;Select the image  control again&lt;/li&gt;
&lt;li&gt;Click on the  ellipsis in the imageURL property&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img alt=&quot;ASP.Net ImageURL property&quot; height=&quot;140&quot; src=&quot;http://www.learn-asp.net/ASPTraining/ASPImage/ASPImageURL.jpg&quot; width=&quot;219&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Add the  Comics1.gif image file&lt;/li&gt;
&lt;li&gt;Test it&lt;/li&gt;
&lt;/ul&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;              &lt;ins style=&quot;border: medium none; display: inline-table; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;ins id=&quot;aswift_4_anchor&quot; style=&quot;border: medium none; display: block; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;/ins&gt;&lt;/ins&gt;   &lt;ins style=&quot;border: medium none; display: inline-table; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;ins id=&quot;aswift_5_anchor&quot; style=&quot;border: medium none; display: block; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;/ins&gt;&lt;/ins&gt;   &lt;ins style=&quot;border: medium none; display: inline-table; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;ins id=&quot;aswift_6_anchor&quot; style=&quot;border: medium none; display: block; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;/ins&gt;&lt;/ins&gt;          &lt;/div&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/8052642280637358457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/aspimage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/8052642280637358457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/8052642280637358457'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/aspimage.html' title='ASP:Image'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-615751964139133456</id><published>2011-06-19T11:39:00.000-07:00</published><updated>2011-06-19T11:39:49.932-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="DropDownList"/><title type='text'>DropDownList</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;h1 align=&quot;center&quot;&gt; DropDownList &lt;br /&gt;
&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;/h1&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;#ffcc00&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;181&quot;&gt;&lt;strong&gt;Property&lt;/strong&gt;&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;382&quot;&gt;&lt;strong&gt;Description&lt;/strong&gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;181&quot;&gt;SelectedIndex&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;382&quot;&gt;Index of the item selected&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;a href=&quot;http://googlesearchinrjs.blogspot.com/&quot;&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/TryThisInVisualStudio.gif&quot; width=&quot;217&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Open Visual Studio &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;107&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DropDownListsImages/DropDownList_clip_image002.jpg&quot; width=&quot;249&quot; /&gt;  &lt;/div&gt;&lt;ul&gt;&lt;li&gt;Add a new webform call it &lt;em&gt;DropDownList.aspx &lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Add a dropDownlist and name it &lt;em&gt;ddlState &lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Add a label control and name it &lt;em&gt;lblDisplay &lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Select the smart tag on the dropdownlist &lt;/li&gt;
&lt;li&gt; Check the enable AutoPostBack &lt;/li&gt;
&lt;li&gt; Select &lt;em&gt;Edit Items &lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;248&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DropDownListsImages/DropDownList_clip_image004.jpg&quot; width=&quot;336&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Click &lt;em&gt;Add&lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Change the text to &lt;em&gt;Pick your state &lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Leave the value blank &lt;/li&gt;
&lt;li&gt; Click &lt;em&gt;Add&lt;/em&gt; again &lt;/li&gt;
&lt;li&gt; Enter &lt;em&gt;Ohio&lt;/em&gt; in the &lt;em&gt;text&lt;/em&gt; and &lt;em&gt;OH&lt;/em&gt; in the &lt;em&gt;value&lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Add three more &lt;/li&gt;
&lt;ul&gt;&lt;li&gt; Florida Fl &lt;/li&gt;
&lt;li&gt; California CA &lt;/li&gt;
&lt;li&gt; Kentucky KY &lt;/li&gt;
&lt;/ul&gt;&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;147&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DropDownListsImages/DropDownList_clip_image006.jpg&quot; width=&quot;420&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Click &lt;em&gt;OK&lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Test it &lt;/li&gt;
&lt;li&gt; Double-click the page and add this code to the page_load &lt;/li&gt;
&lt;/ul&gt;&lt;table border=&quot;1&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td width=&quot;4%&quot;&gt;1&lt;/td&gt;     &lt;td width=&quot;96%&quot;&gt;If ispostback then&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;2&lt;/td&gt;     &lt;td&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;If ddlState.SelectedIndex=0 then &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;3&lt;/td&gt;     &lt;td&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblDisplay.text=&quot;You did not select anything&quot; &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;4&lt;/td&gt;     &lt;td&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;else &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;5&lt;/td&gt;     &lt;td&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblDisplay.text=&quot;State: &quot; &amp;amp; ddlState.SelectedItem.text &amp;amp; &quot;&amp;lt;br /&amp;gt;&quot; &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;6&lt;/td&gt;     &lt;td&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblDisplay.text+=&quot;Abbrev: &quot; &amp;amp; ddlState.SelectedItem.value &amp;amp; &quot;&amp;lt;br /&amp;gt;&quot; &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;7&lt;/td&gt;     &lt;td&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblDisplay.text+=&quot;SelectedIndex: &quot; &amp;amp; ddlState.SelectedIndex &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;8&lt;/td&gt;     &lt;td&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;end if &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff00&quot;&gt;     &lt;td&gt;9&lt;/td&gt;     &lt;td&gt;end if &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div align=&quot;center&quot;&gt;   &lt;img height=&quot;118&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DropDownListsImages/DropDownList_clip_image008.jpg&quot; width=&quot;164&quot; /&gt;     &lt;br /&gt;
&lt;/div&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/615751964139133456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/dropdownlist.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/615751964139133456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/615751964139133456'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/dropdownlist.html' title='DropDownList'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-5525793201951869149</id><published>2011-06-19T11:36:00.000-07:00</published><updated>2011-06-19T11:36:04.822-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Detailsview Control"/><title type='text'>Detailsview Control</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;div&gt;                  &lt;h1&gt;Detailsview Control&lt;/h1&gt;&lt;img alt=&quot;ASP.Net DetailsView SeperatorBar&quot; height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
The DetailsView control in ASP.Net 2.0 is used to create an HTML table that displays the contents of a single database record. &lt;br /&gt;
&lt;br /&gt;
&lt;img alt=&quot;ASP.Net DetailsView SeperatorBar&quot; height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
Displaying Data with the Details View Control in ASP.Net 2.0&lt;br /&gt;
&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/TryThisInVisualStudio.gif&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Open Visual Studio &lt;/li&gt;
&lt;li&gt; Add a webForm to your website, name it &lt;em&gt;DetailsView.aspx&lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Add a DataSource control to the page and configure it to a database &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;73&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ConfigureDataSource.jpg&quot; width=&quot;355&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Add a DetailsView control to the webForm &lt;/li&gt;
&lt;li&gt; Select the DetailsView control and click on the smart tag &lt;/li&gt;
&lt;li&gt; Select &lt;em&gt;Choose Data Source&lt;/em&gt;&lt;/li&gt;
&lt;li&gt; Select the Data Source control you added &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;157&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/SelectSQLDataSource.jpg&quot; width=&quot;405&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;The DetailsView control now formats itself for your data&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;103&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsViewControl1.jpg&quot; width=&quot;210&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Test it and it displays the first record &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;117&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsViewControl2.jpg&quot; width=&quot;236&quot; /&gt;&lt;/div&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;1&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; asp : SqlDataSource ID  =&quot;SqlDataSource1&quot; runat =&quot;server&quot; ConnectionString =&quot; &amp;lt;%$  ConnectionStrings:codecrumbsConnectionString %&amp;gt; &quot; &lt;br /&gt;
SelectCommand =&quot;SELECT * FROM [Surveys]&quot;&amp;gt;&amp;lt;/ asp : SqlDataSource &amp;gt; &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;2&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; asp : DetailsView ID =&quot;DetailsView1&quot; runat =&quot;server&quot; AutoGenerateRows =&quot;False&quot; DataSourceID =&quot;SqlDataSource1&quot; &lt;br /&gt;
Height =&quot;50px&quot; Width =&quot;208px&quot;&amp;gt;&lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;3&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; Fields &amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;4&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; asp : BoundField DataField =&quot;Survey_id&quot; &lt;br /&gt;
HeaderText =&quot;Survey_id&quot; InsertVisible =&quot;False&quot; &lt;br /&gt;
ReadOnly =&quot;True&quot; SortExpression =&quot;Survey_id&quot; /&amp;gt;&lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;5&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; asp : BoundField DataField =&quot;SurveyName&quot; &lt;br /&gt;
HeaderText =&quot;SurveyName&quot; SortExpression =&quot;SurveyName&quot; /&amp;gt;&lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;6&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; asp : BoundField DataField =&quot;SurveyComments&quot; &lt;br /&gt;
HeaderText =&quot;SurveyComments&quot; &lt;br /&gt;
SortExpression =&quot;SurveyComments&quot; /&amp;gt; &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;7&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt;/ Fields &amp;gt; &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;8&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt;/ asp : DetailsView &amp;gt; &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&amp;nbsp; &lt;br /&gt;
&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Explaination.gif&quot; width=&quot;103&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 1 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; SQL Sata Source Control &lt;br /&gt;
Connection String to the database &lt;br /&gt;
SelectCommand contains the SQL statement to retrieve the data &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 2 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; Open DetailsView Control &lt;br /&gt;
Set the dataSourceID to our SQL Data Source &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 3 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; Set up fields &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 4 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; Create a dataBound field &lt;br /&gt;
The HeaderText is SurveyID – This is the text that is used to label the textbox &lt;br /&gt;
The dataField is set to the Survey_Id database field &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 5 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; Create a dataBound field &lt;br /&gt;
The HeaderText is SurveyName – This is the text that is used to label the textbox &lt;br /&gt;
The dataField is set to the SurveyName database field &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 6 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; Create a dataBound field &lt;br /&gt;
The HeaderText is SurveyComments – This is the text that is used to label the textbox &lt;br /&gt;
The dataField is set to the SurveyComments database field &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 7 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; Close the Fields &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ccffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt; 8 &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; Close the DetailsView Control &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&amp;nbsp; &lt;br /&gt;
&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
&lt;h2&gt;DetailsView Fields in ASP.Net 2.0&lt;/h2&gt;You can control the appearance of the DetailsView &lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;#ffcc00&quot;&gt;     &lt;td colspan=&quot;2&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt;&lt;div align=&quot;center&quot;&gt; The DetailView control supports the following Fields &lt;/div&gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;139&quot;&gt; BoundField &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;451&quot;&gt; Displays the value of a data item as text &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;139&quot;&gt; CheckBoxField &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;451&quot;&gt; Displays the value of the data item as a check box &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;139&quot;&gt; CommandField &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;451&quot;&gt; Displays links for editing, deleting and selecting rows &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;139&quot;&gt; ButtonField &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;451&quot;&gt; Displays the value of a data item as a button, imagebutton, linkbutton &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;139&quot;&gt; HyperlinkField &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;451&quot;&gt; Displays the value of a data item as a link &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;139&quot;&gt; ImageField &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;451&quot;&gt; Displays the value of a data item as an image &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffffcc&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;139&quot;&gt; TemplateField &lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;451&quot;&gt; Customize the appearance of a data item &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;107&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_example_image.jpg&quot; width=&quot;221&quot; /&gt;&lt;/div&gt;&lt;h2&gt;Change the text describing each row&lt;/h2&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/TryThisInVisualStudio.gif&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Click on the DetailsView smart tag &lt;/li&gt;
&lt;li&gt; Select &lt;em&gt;Edit Fields&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;257&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_EditFields.jpg&quot; width=&quot;480&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Select any of the fields &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;323&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_FIelds_HeaderText.jpg&quot; width=&quot;396&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Select HeaderText &lt;/li&gt;
&lt;li&gt; Change the value to whatever you want displayed to the left of the data field &lt;/li&gt;
&lt;/ul&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt; &amp;lt;asp:BoundField DataField=&quot;SurveyName&quot; &lt;span class=&quot;style1&quot;&gt;HeaderText=&quot;Survey Name&quot; &lt;/span&gt;SortExpression=&quot;SurveyName&quot; /&amp;gt; &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&amp;nbsp; &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; You can also choose to not display a field &lt;/li&gt;
&lt;li&gt; Select the field you do not want to display &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;170&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASP_DetailsView_Visible.jpg&quot; width=&quot;336&quot; /&gt;&lt;/div&gt;Insert Visible – Determine if this field will be displayed when the detailsView’s mode is set to insert &lt;br /&gt;
ShowHeader – Determines if this field will display a header text &lt;br /&gt;
Visible – Determines if this field will be displayed &lt;br /&gt;
&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt;  &amp;lt;asp:BoundField DataField=&quot;Survey_id&quot; HeaderText=&quot;Survey_id&quot;  InsertVisible=&quot;False&quot; ReadOnly=&quot;True&quot; SortExpression=&quot;Survey_id&quot;  ShowHeader=&quot;False&quot; &lt;span class=&quot;style1&quot;&gt;Visible=&quot;False&quot;&lt;/span&gt; /&amp;gt; &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;h2&gt;Formatting Data&lt;/h2&gt;I’ve added another field in the database called PricePaid of type money to demonstrate the dataFormatString property &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Select the field you want to format &lt;/li&gt;
&lt;li&gt; Add your format string to the &lt;em&gt;DataFormatString&lt;/em&gt; property &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;217&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASP_DetailsView_DataFormat.jpg&quot; width=&quot;408&quot; /&gt;&lt;/div&gt;You must also set the &lt;em&gt;HTMLEncode&lt;/em&gt; to false to let the DataFormatString work&lt;br /&gt;
&lt;br /&gt;
&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt; &amp;lt;asp:BoundField DataField=&quot;PricePaid&quot; &lt;br /&gt;
&lt;span class=&quot;style1&quot;&gt;DataFormatString=&quot;{0:c}&quot;&lt;/span&gt; HeaderText=&quot;PricePaid&quot; &lt;br /&gt;
SortExpression=&quot;PricePaid&quot; HtmlEncode=&quot;False&quot; /&amp;gt; &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;h2&gt;Change the order the rows are displayed &lt;/h2&gt;You can select one of the fields and click the up or down arrow buttons next to it to mode it up or down in the DetailsView &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;199&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_movetemplate.jpg&quot; width=&quot;264&quot; /&gt; &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;img height=&quot;202&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASP_DetailsView_FieldOrder.jpg&quot; width=&quot;263&quot; /&gt;&lt;/div&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
&lt;h2&gt;Displaying a message when there is no data&lt;/h2&gt;There are two ways to display a message when the data source is returning no results. &lt;br /&gt;
&lt;ol&gt;&lt;li&gt; EmptyDataText Property &lt;/li&gt;
&lt;li&gt; EmptyDataTemplate Property &lt;/li&gt;
&lt;/ol&gt;&lt;h2&gt;EmptyDataText Property&lt;/h2&gt;&lt;ul&gt;&lt;li&gt; Select the detailsView and click on the EmptyDataText property in the property window &lt;/li&gt;
&lt;li&gt; Add a text message to display when no data is available &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;141&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASP_DetailsView_EmptyData.jpg&quot; width=&quot;209&quot; /&gt;&lt;/div&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt;  &amp;lt;asp:DetailsView ID=&quot;DetailsView1&quot; runat=&quot;server&quot;  AutoGenerateRows=&quot;False&quot; DataSourceID=&quot;SqlDataSource1&quot; Height=&quot;50px&quot;  Width=&quot;208px&quot; &lt;span class=&quot;style1&quot;&gt;EmptyDataText=&quot;There is no data&quot;&lt;/span&gt;&amp;gt; &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;h2&gt;EmptyDataTemplate&lt;/h2&gt;You can display more complex messages when there is no data including ASP.Net controls. &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Click on the smart tag &lt;/li&gt;
&lt;li&gt; Select Edit Templates &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;271&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASP_DetailsView_EditTemplates.jpg&quot; width=&quot;357&quot; /&gt;&lt;/div&gt;Select &lt;em&gt;EmptyDataTemplate&lt;/em&gt; from the dropdownlist &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;136&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASP_DetailsView_EMptyDataTemplate.jpg&quot; width=&quot;237&quot; /&gt;&lt;/div&gt;You can now drop controls into this box and set their properties &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;185&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASPDetailsView_SorryNoData.jpg&quot; width=&quot;274&quot; /&gt;&lt;/div&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;1&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; EmptyDataTemplate &amp;gt; &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;2&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; asp : Label ID =&quot;Label1&quot; runat =&quot;server&quot; Text =&quot;Sorry, No &lt;br /&gt;
Data&quot;&amp;gt;&amp;lt;/ asp : Label &amp;gt;&amp;lt; br /&amp;gt; &lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;3&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt; asp : Image ID =&quot;Image1&quot; runat =&quot;server&quot; ImageUrl =&quot;~/NoData.gif&quot; /&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;tr bgcolor=&quot;#ffff99&quot;&gt;     &lt;td valign=&quot;top&quot; width=&quot;31&quot;&gt;4&lt;/td&gt;     &lt;td valign=&quot;top&quot; width=&quot;559&quot;&gt; &amp;lt;/ EmptyDataTemplate &amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
&lt;h2&gt;Paging Data with the DetailsView Control in ASP.Net 2.0&lt;/h2&gt;&lt;ul&gt;&lt;li&gt; To allow paging change the AllowPaging property to true &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;71&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_AllowPaging.jpg&quot; width=&quot;210&quot; /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;img height=&quot;262&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/ASPDetailsView_EnablePaging.jpg&quot; width=&quot;183&quot; /&gt;&lt;/div&gt;This can be done in the properties window or by clicking the smart tag &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;134&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_PagingExample.jpg&quot; width=&quot;224&quot; /&gt;&lt;/div&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt; &amp;lt;asp:DetailsView ID=&quot;DetailsView1&quot; runat=&quot;server&quot; AutoGenerateRows=&quot;False&quot; DataSourceID=&quot;SqlDataSource1&quot; &lt;br /&gt;
Height=&quot;50px&quot; Width=&quot;208px&quot; EmptyDataText=&quot;There is no data&quot; &lt;span class=&quot;style1&quot;&gt;AllowPaging=&quot;True&quot;&lt;/span&gt;&amp;gt; &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;h2&gt;Paging with AJAX&lt;/h2&gt;You page is posted back to the server each time you page by default &lt;br /&gt;
You can use AJAX to page through the data in the DetailsView control&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Set the EnablePagingCallBacks property to true &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;70&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_AJAX.jpg&quot; width=&quot;253&quot; /&gt;&lt;/div&gt;Now the paging is done on the client-side &lt;br /&gt;
To test this let’s add a label control to the page &lt;br /&gt;
Name it showTime &lt;br /&gt;
Clear the text property&lt;br /&gt;
Double click on the page and add this line of code in the page_load method &lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt; showTime.text=DateTime.Now &lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;60&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_dateTime.jpg&quot; width=&quot;345&quot; /&gt;&lt;/div&gt;Test the page and do some paging, notice the date and time does not  change. This shows that the page never posted back to the server. &lt;br /&gt;
&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
&lt;h2&gt;Customize the DetailsView Paging Interface&lt;/h2&gt;By default, numbers are displayed for paging &lt;br /&gt;
You can change that by changing the &lt;em&gt;PagerSettings&lt;/em&gt; property&lt;br /&gt;
Click the plus sign next to the pagerSettings in the properties window &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;231&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_Page_Settings.jpg&quot; width=&quot;258&quot; /&gt;&lt;/div&gt;You can add a URL for an image in the following properties: &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; FirstPageImageURL &lt;/li&gt;
&lt;li&gt; LastPageImageURL &lt;/li&gt;
&lt;li&gt; NextPageImageURL &lt;/li&gt;
&lt;li&gt; PreviousPageImageURL &lt;/li&gt;
&lt;/ul&gt;You can change the text links in the following properties: &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; FirstPageText &lt;/li&gt;
&lt;li&gt; LastPageText &lt;/li&gt;
&lt;li&gt; Next PageText &lt;/li&gt;
&lt;li&gt; Previous PageText &lt;/li&gt;
&lt;/ul&gt;You can change the format or the pager by changing the &lt;em&gt;Mode&lt;/em&gt; property &lt;br /&gt;
Possible Values are: &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Numeric (default) &lt;/li&gt;
&lt;li&gt; NextPrevious &lt;/li&gt;
&lt;li&gt; NextPreviousFirstLast &lt;/li&gt;
&lt;li&gt; NumericFirstLast &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;96&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_NumericPaging.jpg&quot; width=&quot;236&quot; /&gt;&lt;/div&gt;You can change the position of the paging control by changing the Position property &lt;br /&gt;
Possible values are: &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Bottom &lt;/li&gt;
&lt;li&gt; Top &lt;/li&gt;
&lt;li&gt; TopAndBottom &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;79&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_PagingPosition.jpg&quot; width=&quot;252&quot; /&gt;&lt;/div&gt;Change the amount of numbers that display by changing the &lt;em&gt;PageButtonCount&lt;/em&gt; property &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;109&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_Paging2.jpg&quot; width=&quot;147&quot; /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;img height=&quot;58&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_PageCount.jpg&quot; width=&quot;259&quot; /&gt;&lt;/div&gt;&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt; &amp;lt; PagerSettings PageButtonCount =&quot;2&quot; Mode =&quot;NextPreviousFirstLast&quot; /&amp;gt;&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
&lt;h2&gt;Updating Data with the DetailsView Control in ASP.Net 2.0&lt;/h2&gt;Change the DetailsView control’s autoGenerateEditButton to true &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;73&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_AutoEdit.jpg&quot; width=&quot;258&quot; /&gt;&lt;/div&gt;This adds an Edit linkButton &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;159&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_Editing.jpg&quot; width=&quot;236&quot; /&gt;&lt;/div&gt;You must set the DataKeyNames property to the primary key of the data source for this to work &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Select the ellipsis button in the DataKeyNames value &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;77&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_KeyNames1.jpg&quot; width=&quot;260&quot; /&gt;&lt;/div&gt;Select the primary key and click the arrow button &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;191&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_Keynames2.jpg&quot; width=&quot;288&quot; /&gt;&lt;/div&gt;The control will automatically generate textboxes to allow the user to change the values &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;169&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_Update.jpg&quot; width=&quot;238&quot; /&gt;&lt;/div&gt;It also automatically creates a Update and Cancel linkButton&lt;br /&gt;
You must also add an UpdateCommand in your dataSource control &lt;br /&gt;
Select the data Source control and click on the UpdateQuery property in the properties window &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;58&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_UpdateQuery.jpg&quot; width=&quot;261&quot; /&gt;&lt;/div&gt;Add your query into the UpdateCommand &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;164&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_UpdateSQL.jpg&quot; width=&quot;550&quot; /&gt;&lt;/div&gt;By default the detailsView uses the name of each field as the  parameter name, you only need put an @ symbol in front of it (For SQL  Server) &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
You can force the DetailsView control to appear in the Edit mode by setting the &lt;em&gt;defaultMode&lt;/em&gt; to &lt;em&gt;Edit &lt;/em&gt;&lt;br /&gt;
&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/LetsLookAtTheCode.jpg&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt; &amp;lt;asp:SqlDataSource ID=&quot;SqlDataSource1&quot; runat=&quot;server&quot; &lt;br /&gt;
ConnectionString=&quot; &amp;lt;%$ ConnectionStrings:codecrumbsConnectionString %&amp;gt;&quot; &lt;br /&gt;
SelectCommand=&quot;SELECT * FROM [Surveys]&quot; &lt;br /&gt;
&lt;span class=&quot;style1&quot;&gt;UpdateCommand=&quot;Update Surveys set  SurveyName=@SurveyName,  SurveyComments=@SurveyComments,PricePaid=@PricePaid where  Survey_ID=@Survey_ID&lt;/span&gt;&quot;&amp;gt; &amp;lt;/asp:SqlDataSource&amp;gt; &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;tr&gt;     &lt;td bgcolor=&quot;#ffff99&quot; valign=&quot;top&quot; width=&quot;590&quot;&gt; &amp;lt;asp:DetailsView ID=&quot;DetailsView1&quot; runat=&quot;server&quot; AutoGenerateRows=&quot;False&quot; DataSourceID=&quot;SqlDataSource1&quot; &lt;br /&gt;
Height=&quot;50px&quot; Width=&quot;208px&quot; EmptyDataText=&quot;There is no data&quot; &lt;br /&gt;
AllowPaging=&quot;True&quot; EnablePagingCallbacks=&quot;True&quot; &lt;span class=&quot;style1&quot;&gt;AutoGenerateEditButton=&quot;True&quot; DataKeyNames=&quot;Survey_id&quot;&lt;/span&gt;&amp;gt; &lt;br /&gt;
&lt;/td&gt;   &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
&lt;h2&gt;Editing Details View control with Templates&lt;/h2&gt;You can add validation when editing in the DetailsView control by using templates. &lt;br /&gt;
&lt;img height=&quot;21&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/TryThisInVisualStudio.gif&quot; width=&quot;217&quot; /&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Click on the DetailsView smart tag &lt;/li&gt;
&lt;li&gt; Select Edit Fields &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;243&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_EditFIelds2.jpg&quot; width=&quot;483&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Click on TemplateField &lt;/li&gt;
&lt;li&gt; Click the Add button &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;311&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_AddTemplate.jpg&quot; width=&quot;420&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Click on all but the primary key field and delete it by clicking the red x button &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;194&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_AddTemplate2.jpg&quot; width=&quot;250&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Click the OK button &lt;/li&gt;
&lt;li&gt; Click the smart tag again and select Edit templates &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;243&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_EditTemplates2.jpg&quot; width=&quot;490&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Select the smart tag and choose ItemTemplate &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;158&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_itemTemplate.jpg&quot; width=&quot;347&quot; /&gt;&lt;/div&gt;The Item template is used to display the data &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Add a label for each field and text describing them &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;110&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_itemTemplate2.jpg&quot; width=&quot;277&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Click the first label and select the smart tag &lt;/li&gt;
&lt;li&gt; Select Edit Data binding &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;93&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_editDataBindings.jpg&quot; width=&quot;290&quot; /&gt;&lt;/div&gt;Make sure text is selected and add this code to the Code Expression &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;259&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_eval.jpg&quot; width=&quot;528&quot; /&gt;&lt;/div&gt;Do this for each label &lt;br /&gt;
You can add formatting as well &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;217&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_evalFormat.jpg&quot; width=&quot;480&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Make sure Enable Editing is checked &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;291&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_EnableEditing.jpg&quot; width=&quot;487&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Now you can select EditItemTemplate &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;240&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_editItemTemplate.jpg&quot; width=&quot;353&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Add a two textboxes and text to label them &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;172&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_EditItemTemplate2.jpg&quot; width=&quot;407&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Click the smart tag on the first textbox &lt;/li&gt;
&lt;li&gt; Select Edit DataBinding &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;128&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_EditDataBindings2.jpg&quot; width=&quot;341&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Type &lt;/li&gt;
&lt;/ul&gt;bind(“fieldname”) &lt;br /&gt;
You must use &lt;em&gt;BIND&lt;/em&gt; instead of &lt;em&gt;EVAL&lt;/em&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Click OK &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;269&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_eval3.jpg&quot; width=&quot;468&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Do the same for the next textbox &lt;/li&gt;
&lt;/ul&gt;Add a requiredFieldValidator to the template &lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;165&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_requiredFieldValidator.jpg&quot; width=&quot;458&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Set the controlToValidate property to the name of the first textbox &lt;/li&gt;
&lt;li&gt; Do the same for each textbox &lt;/li&gt;
&lt;/ul&gt;&amp;nbsp; &lt;br /&gt;
&lt;ul&gt;&lt;li&gt; Click the smart tag and select &lt;em&gt;End Template Editing &lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;151&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_endTemplateEdit.jpg&quot; width=&quot;375&quot; /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Make sure EnablePagingCalls is false &lt;/li&gt;
&lt;/ul&gt;&lt;div align=&quot;center&quot;&gt;&lt;img height=&quot;71&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/ASPTraining/DetailsVIew/DetailsView_enablePagingCall.jpg&quot; width=&quot;231&quot; /&gt;&lt;/div&gt;&amp;nbsp; &lt;br /&gt;
&lt;img height=&quot;26&quot; src=&quot;http://www.learn-asp.net/ASPTutorials/CommonImages/Training_Bar.gif&quot; width=&quot;595&quot; /&gt;&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;ins style=&quot;border: medium none; display: inline-table; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;ins id=&quot;aswift_4_anchor&quot; style=&quot;border: medium none; display: block; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;/ins&gt;&lt;/ins&gt;   &lt;ins style=&quot;border: medium none; display: inline-table; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;ins id=&quot;aswift_5_anchor&quot; style=&quot;border: medium none; display: block; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;/ins&gt;&lt;/ins&gt;   &lt;ins style=&quot;border: medium none; display: inline-table; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;ins id=&quot;aswift_6_anchor&quot; style=&quot;border: medium none; display: block; height: 125px; margin: 0pt; padding: 0pt; position: relative; visibility: visible; width: 125px;&quot;&gt;&lt;/ins&gt;&lt;/ins&gt;          &lt;/div&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; ASP.Net 2.0 tutorials &amp;amp; training &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;        &amp;nbsp; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/5525793201951869149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/detailsview-control.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5525793201951869149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5525793201951869149'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/detailsview-control.html' title='Detailsview Control'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-5349022589273420819</id><published>2011-06-19T00:46:00.000-07:00</published><updated>2011-06-19T00:46:09.013-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Using TemplateFields in the GridView Control"/><title type='text'>Using TemplateFields in the GridView Control</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;h2&gt;Introduction&lt;/h2&gt;The GridView is composed of a set of fields that indicate what properties from the &lt;code&gt;DataSource&lt;/code&gt;  are to be included in the rendered output along with how the data will  be displayed. The simplest field type is the BoundField, which displays a  data value as text. Other field types display the data using alternate  HTML elements. The CheckBoxField, for example, renders as a checkbox  whose checked state depends on the value of a specified data field; the  ImageField renders an image whose image source is based upon a specified  data field. Hyperlinks and buttons whose state depends on an underlying  data field value can be rendered using the HyperLinkField and  ButtonField field types.&lt;br /&gt;
While the CheckBoxField, ImageField, HyperLinkField, and ButtonField  field types allow for an alternate view of the data, they still are  fairly limited with respect to formatting. A CheckBoxField can only  display a single checkbox, whereas an ImageField can only display a  single image. What if a particular field needs to display some text, a  checkbox, &lt;em&gt;and&lt;/em&gt; an image, all based upon different data field  values? Or what if we wanted to display the data using a Web control  other than the CheckBox, Image, HyperLink, or Button? Furthermore, the  BoundField limits its display to a single data field. What if we wanted  to show two or more data field values in a single GridView column?&lt;br /&gt;
To accommodate this level of flexibility the GridView offers the TemplateField, which renders using a &lt;em&gt;template&lt;/em&gt;.  A template can include a mix of static HTML, Web controls, and  databinding syntax. Furthermore, the TemplateField has a variety of  templates that can be used to customize the rendering for different  situations. For example, the &lt;code&gt;ItemTemplate&lt;/code&gt; is used by default to render the cell for each row, but the &lt;code&gt;EditItemTemplate&lt;/code&gt; template can be used to customize the interface when editing data.&lt;br /&gt;
In this tutorial we&#39;ll examine how to use the TemplateField to  achieve a greater degree of customization with the GridView control. In  the &lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;preceding tutorial&lt;/a&gt; we saw how to customize the formatting based on the underlying data using the &lt;code&gt;DataBound&lt;/code&gt; and &lt;code&gt;RowDataBound&lt;/code&gt;  event handlers. Another way to customize the formatting based on the  underlying data is by calling formatting methods from within a template.  We&#39;ll look at this technique in this tutorial as well.&lt;br /&gt;
For this tutorial we will use TemplateFields to customize the  appearance of a list of employees. Specifically, we&#39;ll list all of the  employees, but will display the employee&#39;s first and last names in one  column, their hire date in a Calendar control, and a status column that  indicates how many days they&#39;ve been employed at the company.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig01cs.png&quot;&gt;&lt;img alt=&quot;Three TemplateFields are Used to Customize the Display&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig01css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 1&lt;/strong&gt;: Three TemplateFields are Used to Customize the Display &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig01cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;h2&gt;Step 1: Binding the Data to the GridView&lt;/h2&gt;In reporting scenarios where you need to use TemplateFields to  customize the appearance, I find it easiest to start by creating a  GridView control that contains just BoundFields first and then to add  new TemplateFields or convert the existing BoundFields to TemplateFields  as needed. Therefore, let&#39;s start this tutorial by adding a GridView to  the page through the Designer and binding it to an ObjectDataSource  that returns the list of employees. These steps will create a GridView  with BoundFields for each of the employee fields.&lt;br /&gt;
Open the &lt;code&gt;GridViewTemplateField.aspx&lt;/code&gt; page and drag a  GridView from the Toolbox onto the Designer. From the GridView&#39;s smart  tag choose to add a new ObjectDataSource control that invokes the &lt;code&gt;EmployeesBLL&lt;/code&gt; class&#39;s &lt;code&gt;GetEmployees()&lt;/code&gt; method.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig02cs.png&quot;&gt;&lt;img alt=&quot;Add a New ObjectDataSource Control that Invokes the GetEmployees() Method&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig02css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 2&lt;/strong&gt;: Add a New ObjectDataSource Control that Invokes the &lt;code&gt;GetEmployees()&lt;/code&gt; Method &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig02cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;Binding the GridView in this manner will automatically add a BoundField for each of the employee properties: &lt;code&gt;EmployeeID&lt;/code&gt;, &lt;code&gt;LastName&lt;/code&gt;, &lt;code&gt;FirstName&lt;/code&gt;, &lt;code&gt;Title&lt;/code&gt;, &lt;code&gt;HireDate&lt;/code&gt;, &lt;code&gt;ReportsTo&lt;/code&gt;, and &lt;code&gt;Country&lt;/code&gt;. For this report let&#39;s not bother with displaying the &lt;code&gt;EmployeeID&lt;/code&gt;, &lt;code&gt;ReportsTo&lt;/code&gt;, or &lt;code&gt;Country&lt;/code&gt; properties. To remove these BoundFields you can:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Use the Fields dialog box   click on the Edit Columns link from the  GridView&#39;s smart tag to bring up this dialog box. Next, select the  BoundFields from the lower left list and click the red X button to  remove the BoundField.&lt;/li&gt;
&lt;li&gt;Edit the GridView&#39;s declarative syntax by hand   from the Source view, delete the &lt;code&gt;&amp;lt;asp:BoundField&amp;gt;&lt;/code&gt; element for the BoundField you wish to remove.&lt;/li&gt;
&lt;/ul&gt;After you have removed the &lt;code&gt;EmployeeID&lt;/code&gt;, &lt;code&gt;ReportsTo&lt;/code&gt;, and &lt;code&gt;Country&lt;/code&gt; BoundFields, your GridView&#39;s markup should look like:&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code1&quot;&gt;&amp;lt;asp:GridView ID=&quot;GridView1&quot; runat=&quot;server&quot;     AutoGenerateColumns=&quot;False&quot; DataKeyNames=&quot;EmployeeID&quot;     DataSourceID=&quot;ObjectDataSource1&quot;&amp;gt;     &amp;lt;Columns&amp;gt;         &amp;lt;asp:BoundField DataField=&quot;LastName&quot; HeaderText=&quot;LastName&quot;             SortExpression=&quot;LastName&quot; /&amp;gt;         &amp;lt;asp:BoundField DataField=&quot;FirstName&quot; HeaderText=&quot;FirstName&quot;             SortExpression=&quot;FirstName&quot; /&amp;gt;         &amp;lt;asp:BoundField DataField=&quot;Title&quot; HeaderText=&quot;Title&quot;             SortExpression=&quot;Title&quot; /&amp;gt;         &amp;lt;asp:BoundField DataField=&quot;HireDate&quot; HeaderText=&quot;HireDate&quot;             SortExpression=&quot;HireDate&quot; /&amp;gt;     &amp;lt;/Columns&amp;gt; &amp;lt;/asp:GridView&amp;gt;&lt;/code&gt; Take a moment to view our progress in a browser. At this point you  should see a table with a record for each employee and four columns: one  for the employee&#39;s last name, one for their first name, one for their  title, and one for their hire date.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig03cs.png&quot;&gt;&lt;img alt=&quot;The LastName, FirstName, Title, and HireDate Fields are Displayed for Each Employee&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig03css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 3&lt;/strong&gt;: The &lt;code&gt;LastName&lt;/code&gt;, &lt;code&gt;FirstName&lt;/code&gt;, &lt;code&gt;Title&lt;/code&gt;, and &lt;code&gt;HireDate&lt;/code&gt; Fields are Displayed for Each Employee &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig03cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;h2&gt;Step 2: Displaying the First and Last Names in a Single Column&lt;/h2&gt;Currently, each employee&#39;s first and last names are displayed in a  separate column. It might be nice to combine them into a single column  instead. To accomplish this we need to use a TemplateField. We can  either add a new TemplateField, add to it the needed markup and  databinding syntax, and then delete the &lt;code&gt;FirstName&lt;/code&gt; and &lt;code&gt;LastName&lt;/code&gt; BoundFields, or we can convert the &lt;code&gt;FirstName&lt;/code&gt; BoundField into a TemplateField, edit the TemplateField to include the &lt;code&gt;LastName&lt;/code&gt; value, and then remove the &lt;code&gt;LastName&lt;/code&gt; BoundField.&lt;br /&gt;
Both approaches net the same result, but personally I like converting  BoundFields to TemplateFields when possible because the conversion  automatically adds an &lt;code&gt;ItemTemplate&lt;/code&gt; and &lt;code&gt;EditItemTemplate&lt;/code&gt;  with Web controls and databinding syntax to mimic the appearance and  functionality of the BoundField. The benefit is that we&#39;ll need to do  less work with the TemplateField as the conversion process will have  performed some of the work for us.&lt;br /&gt;
To convert an existing BoundField into a TemplateField, click on the  Edit Columns link from the GridView&#39;s smart tag, bringing up the Fields  dialog box. Select the BoundField to convert from the list in the lower  left corner and then click the &quot;Convert this field into a TemplateField&quot;  link in the bottom right corner. &lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig04cs.png&quot;&gt;&lt;img alt=&quot;Convert a BoundField Into a TemplateField from the Fields Dialog Box&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig04css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 4&lt;/strong&gt;: Convert a BoundField Into a TemplateField from the Fields Dialog Box &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig04cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;Go ahead and convert the &lt;code&gt;FirstName&lt;/code&gt; BoundField into a  TemplateField. After this change there&#39;s no perceptive difference in the  Designer. This is because converting the BoundField into a  TemplateField creates a TemplateField that maintains the look and feel  of the BoundField. Despite there being no visual difference at this  point in the Designer, this conversion process has replaced the  BoundField&#39;s declarative syntax - &lt;code&gt;&amp;lt;asp:BoundField DataField=&quot;FirstName&quot; HeaderText=&quot;FirstName&quot; SortExpression=&quot;FirstName&quot; /&amp;gt;&lt;/code&gt; - with the following TemplateField syntax:&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code2&quot;&gt;&amp;lt;asp:TemplateField HeaderText=&quot;FirstName&quot; SortExpression=&quot;FirstName&quot;&amp;gt;     &amp;lt;EditItemTemplate&amp;gt;         &amp;lt;asp:TextBox ID=&quot;TextBox1&quot; runat=&quot;server&quot;             Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;     &amp;lt;/EditItemTemplate&amp;gt;     &amp;lt;ItemTemplate&amp;gt;         &amp;lt;asp:Label ID=&quot;Label1&quot; runat=&quot;server&quot;             Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:Label&amp;gt;     &amp;lt;/ItemTemplate&amp;gt; &amp;lt;/asp:TemplateField&amp;gt;&lt;/code&gt; As you can see, the TemplateField consists of two templates   an &lt;code&gt;ItemTemplate&lt;/code&gt; that has a Label whose &lt;code&gt;Text&lt;/code&gt; property is set to the value of the &lt;code&gt;FirstName&lt;/code&gt; data field, and an &lt;code&gt;EditItemTemplate&lt;/code&gt; with a TextBox control whose &lt;code&gt;Text&lt;/code&gt; property is also set to the &lt;code&gt;FirstName&lt;/code&gt; data field. The databinding syntax - &lt;code&gt;&amp;lt;%# Bind(&quot;&lt;em&gt;fieldName&lt;/em&gt;&quot;) %&amp;gt;&lt;/code&gt; - indicates that the data field &lt;em&gt;&lt;code&gt;fieldName&lt;/code&gt;&lt;/em&gt; is bound to the specified Web control property.&lt;br /&gt;
To add the &lt;code&gt;LastName&lt;/code&gt; data field value to this TemplateField we need to add another Label Web control in the &lt;code&gt;ItemTemplate&lt;/code&gt; and bind its &lt;code&gt;Text&lt;/code&gt; property to &lt;code&gt;LastName&lt;/code&gt;.  This can be accomplished either by hand or through the Designer. To do  it by hand, simply add the appropriate declarative syntax to the &lt;code&gt;ItemTemplate&lt;/code&gt;:&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code3&quot;&gt;&amp;lt;asp:TemplateField HeaderText=&quot;FirstName&quot; SortExpression=&quot;FirstName&quot;&amp;gt;     &amp;lt;EditItemTemplate&amp;gt;         &amp;lt;asp:TextBox ID=&quot;TextBox1&quot; runat=&quot;server&quot;             Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;     &amp;lt;/EditItemTemplate&amp;gt;     &amp;lt;ItemTemplate&amp;gt;         &amp;lt;asp:Label ID=&quot;Label1&quot; runat=&quot;server&quot;             Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:Label&amp;gt;         &amp;lt;asp:Label ID=&quot;Label2&quot; runat=&quot;server&quot;             Text=&#39;&amp;lt;%# Bind(&quot;LastName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:Label&amp;gt;     &amp;lt;/ItemTemplate&amp;gt; &amp;lt;/asp:TemplateField&amp;gt;&lt;/code&gt; To add it through the Designer, click on the Edit Templates link from  the GridView&#39;s smart tag. This will display the GridView&#39;s template  editing interface. In this interface&#39;s smart tag is a list of the  templates in the GridView. Since we only have one TemplateField at this  point, the only templates listed in the drop-down list are those  templates for the &lt;code&gt;FirstName&lt;/code&gt; TemplateField along with the &lt;code&gt;EmptyDataTemplate&lt;/code&gt; and &lt;code&gt;PagerTemplate&lt;/code&gt;. The &lt;code&gt;EmptyDataTemplate&lt;/code&gt; template, if specified, is used to render the GridView&#39;s output if there are no results in the data bound to the GridView; the &lt;code&gt;PagerTemplate&lt;/code&gt;, if specified, is used to render the paging interface for a GridView that supports paging. &lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig05cs.png&quot;&gt;&lt;img alt=&quot;The GridView&#39;s Templates Can Be Edited Through the Designer&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig05css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 5&lt;/strong&gt;: The GridView&#39;s Templates Can Be Edited Through the Designer &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig05cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;To also display the &lt;code&gt;LastName&lt;/code&gt; in the &lt;code&gt;FirstName&lt;/code&gt; TemplateField drag the Label control from the Toolbox into the &lt;code&gt;FirstName&lt;/code&gt; TemplateField&#39;s &lt;code&gt;ItemTemplate&lt;/code&gt; in the GridView&#39;s template editing interface.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig06cs.png&quot;&gt;&lt;img alt=&quot;Add a Label Web Control to the FirstName TemplateField&#39;s ItemTemplate&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig06css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 6&lt;/strong&gt;: Add a Label Web Control to the &lt;code&gt;FirstName&lt;/code&gt; TemplateField&#39;s ItemTemplate &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig06cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;At this point the Label Web control added to the TemplateField has its &lt;code&gt;Text&lt;/code&gt; property set to &quot;Label&quot;. We need to change this so that this property is bound to the value of the &lt;code&gt;LastName&lt;/code&gt; data field instead.  To accomplish this click on the Label control&#39;s smart tag and choose the Edit DataBindings option.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig07cs.png&quot;&gt;&lt;img alt=&quot;Choose the Edit DataBindings Option from the Label&#39;s Smart Tag&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig07css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 7&lt;/strong&gt;: Choose the Edit DataBindings Option from the Label&#39;s Smart Tag &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig07cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;This will bring up the DataBindings dialog box. From here you can  select the property to participate in databinding from the list on the  left and choose the field to bind the data to from the drop-down list on  the right. Choose the &lt;code&gt;Text&lt;/code&gt; property from the left and the &lt;code&gt;LastName&lt;/code&gt; field from the right and click OK.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig08cs.png&quot;&gt;&lt;img alt=&quot;Bind the Text Property to the LastName Data Field&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig08css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 8&lt;/strong&gt;: Bind the &lt;code&gt;Text&lt;/code&gt; Property to the &lt;code&gt;LastName&lt;/code&gt; Data Field &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig08cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;blockquote&quot;&gt;&lt;strong&gt;Note: &lt;/strong&gt;The DataBindings dialog box  allows you to indicate whether to perform two-way databinding. If you  leave this unchecked, the databinding syntax &lt;code&gt;&amp;lt;%# Eval(&quot;LastName&quot;)%&amp;gt;&lt;/code&gt; will be used instead of &lt;code&gt;&amp;lt;%# Bind(&quot;LastName&quot;)%&amp;gt;&lt;/code&gt;.  Either approach is fine for this tutorial. Two-way databinding becomes  important when inserting and editing data. For simply displaying data,  however, either approach will work equally well. We&#39;ll discuss two-way  databinding in detail in future tutorials.&lt;/div&gt;Take a moment to view this page through a browser. As you can see, the GridView still includes four columns; however, the &lt;code&gt;FirstName&lt;/code&gt; column now lists &lt;em&gt;both&lt;/em&gt; the &lt;code&gt;FirstName&lt;/code&gt; and &lt;code&gt;LastName&lt;/code&gt; data field values.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig09cs.png&quot;&gt;&lt;img alt=&quot;Both the FirstName and LastName Values are Shown in a Single Column&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig09css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 9&lt;/strong&gt;: Both the &lt;code&gt;FirstName&lt;/code&gt; and &lt;code&gt;LastName&lt;/code&gt; Values are Shown in a Single Column &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig09cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;To complete this first step, remove the &lt;code&gt;LastName&lt;/code&gt; BoundField and rename the &lt;code&gt;FirstName&lt;/code&gt; TemplateField&#39;s &lt;code&gt;HeaderText&lt;/code&gt; property to &quot;Name&quot;. After these changes the GridView&#39;s declarative markup should look like the following:&lt;br /&gt;
&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code4&quot;&gt;&amp;lt;asp:GridView ID=&quot;GridView1&quot; runat=&quot;server&quot;     AutoGenerateColumns=&quot;False&quot; DataKeyNames=&quot;EmployeeID&quot;     DataSourceID=&quot;ObjectDataSource1&quot;&amp;gt;     &amp;lt;Columns&amp;gt;         &amp;lt;asp:TemplateField HeaderText=&quot;Name&quot; SortExpression=&quot;FirstName&quot;&amp;gt;             &amp;lt;EditItemTemplate&amp;gt;                 &amp;lt;asp:TextBox ID=&quot;TextBox1&quot; runat=&quot;server&quot;                     Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;             &amp;lt;/EditItemTemplate&amp;gt;             &amp;lt;ItemTemplate&amp;gt;                 &amp;lt;asp:Label ID=&quot;Label1&quot; runat=&quot;server&quot;                     Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:Label&amp;gt;                 &amp;lt;asp:Label ID=&quot;Label2&quot; runat=&quot;server&quot;                     Text=&#39;&amp;lt;%# Eval(&quot;LastName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:Label&amp;gt;             &amp;lt;/ItemTemplate&amp;gt;         &amp;lt;/asp:TemplateField&amp;gt;         &amp;lt;asp:BoundField DataField=&quot;Title&quot; HeaderText=&quot;Title&quot;             SortExpression=&quot;Title&quot; /&amp;gt;         &amp;lt;asp:BoundField DataField=&quot;HireDate&quot; HeaderText=&quot;HireDate&quot;             SortExpression=&quot;HireDate&quot; /&amp;gt;     &amp;lt;/Columns&amp;gt; &amp;lt;/asp:GridView&amp;gt;&lt;/code&gt;&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code4&quot;&gt;&amp;nbsp;&lt;/code&gt; &lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig10cs.png&quot;&gt;&lt;img alt=&quot;Each Employee&#39;s First and Last Names are Displayed in One Colum&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig10css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 10&lt;/strong&gt;: Each Employee&#39;s First and Last Names are Displayed in One Colum &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig10cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;h2&gt;Step 3:  Using the Calendar Control to Display the &lt;code&gt;HiredDate&lt;/code&gt; Field&lt;/h2&gt;Displaying a data field value as text in a GridView is as simple as  using a BoundField. For certain scenarios, however, the data is best  expressed using a particular Web control instead of just text. Such  customization of the display of data is possible with TemplateFields.  For example, rather than display the employee&#39;s hire date as text, we  could show a calendar (using &lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;the Calendar control&lt;/a&gt;) with their hire date highlighted.&lt;br /&gt;
To accomplish this, start by converting the &lt;code&gt;HiredDate&lt;/code&gt;  BoundField into a TemplateField. Simply go to the GridView&#39;s smart tag  and click the Edit Columns link, bringing up the Fields dialog box.  Select the &lt;code&gt;HiredDate&lt;/code&gt; BoundField and click &quot;Convert this field into a TemplateField.&quot;&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig11cs.png&quot;&gt;&lt;img alt=&quot;Convert the HiredDate BoundField Into a TemplateField&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig11css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 11&lt;/strong&gt;: Convert the &lt;code&gt;HiredDate&lt;/code&gt; BoundField Into a TemplateField &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig11cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;As we saw in Step 2, this will replace the BoundField with a TemplateField that contains an &lt;code&gt;ItemTemplate&lt;/code&gt; and &lt;code&gt;EditItemTemplate&lt;/code&gt; with a Label and TextBox whose &lt;code&gt;Text&lt;/code&gt; properties are bound to the &lt;code&gt;HiredDate&lt;/code&gt; value using the databinding syntax &lt;code&gt;&amp;lt;%# Bind(&quot;HiredDate&quot;)%&amp;gt;&lt;/code&gt;.&lt;br /&gt;
To replace the text with a Calendar control, edit the template by  removing the Label and adding a Calendar control. From the Designer,  select Edit Templates from the GridView&#39;s smart tag and choose the &lt;code&gt;HireDate&lt;/code&gt; TemplateField&#39;s &lt;code&gt;ItemTemplate&lt;/code&gt;  from the drop-down list. Next, delete the Label control and drag a  Calendar control from the Toolbox into the template editing interface.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig12cs.png&quot;&gt;&lt;img alt=&quot;Add a Calendar Control to the HireDate TemplateField&#39;s ItemTemplate&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig12css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 12&lt;/strong&gt;: Add a Calendar Control to the &lt;code&gt;HireDate&lt;/code&gt; TemplateField&#39;s &lt;code&gt;ItemTemplate&lt;/code&gt; &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig12cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;At this point each row in the GridView will contain a Calendar control in its &lt;code&gt;HiredDate&lt;/code&gt; TemplateField. However, the employee&#39;s actual &lt;code&gt;HiredDate&lt;/code&gt;  value is not set anywhere in the Calendar control, causing each  Calendar control to default to showing the current month and date. To  remedy this, we need to assign each employee&#39;s &lt;code&gt;HiredDate&lt;/code&gt; to the Calendar control&#39;s &lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;SelectedDate&lt;/a&gt; and &lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;VisibleDate&lt;/a&gt; properties.&lt;br /&gt;
From the Calendar control&#39;s smart tag, choose Edit DataBindings. Next, bind both &lt;code&gt;SelectedDate&lt;/code&gt; and &lt;code&gt;VisibleDate&lt;/code&gt; properties to the &lt;code&gt;HiredDate&lt;/code&gt; data field.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig13cs.png&quot;&gt;&lt;img alt=&quot;Bind the SelectedDate and VisibleDate Properties to the HiredDate Data Field&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig13css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 13&lt;/strong&gt;: Bind the &lt;code&gt;SelectedDate&lt;/code&gt; and &lt;code&gt;VisibleDate&lt;/code&gt; Properties to the &lt;code&gt;HiredDate&lt;/code&gt; Data Field &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig13cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;blockquote&quot;&gt;&lt;strong&gt;Note:&lt;/strong&gt; The Calendar control&#39;s selected date need not necessarily be visible. For example, a Calendar may have August 1&lt;sup&gt;st&lt;/sup&gt;,  1999 as the selected date, but be showing the current month and year.  The selected date and visible date are specified by the Calendar  control&#39;s &lt;code&gt;SelectedDate&lt;/code&gt; and &lt;code&gt;VisibleDate&lt;/code&gt; properties. Since we want to both select the employee&#39;s &lt;code&gt;HiredDate&lt;/code&gt; and make sure that it&#39;s shown we need to bind both of these properties to the &lt;code&gt;HireDate&lt;/code&gt; data field.&lt;/div&gt;When viewing the page in a browser, the calendar now shows the month  of the employee&#39;s hired date and selects that particular date.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig14cs.png&quot;&gt;&lt;img alt=&quot;The Employee&#39;s HiredDate is Shown in the Calendar Control&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig14css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 14&lt;/strong&gt;: The Employee&#39;s &lt;code&gt;HiredDate&lt;/code&gt; is Shown in the Calendar Control &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig14cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;blockquote&quot;&gt;&lt;strong&gt;Note: &lt;/strong&gt;Contrary to all the examples we&#39;ve seen thus far, for this tutorial we did &lt;em&gt;not&lt;/em&gt; set &lt;code&gt;EnableViewState&lt;/code&gt; property to &lt;code&gt;false&lt;/code&gt;  for this GridView. The reason for this decision is because clicking the  dates of the Calendar control causes a postback, setting the Calendar&#39;s  selected date to the date just clicked. If the GridView&#39;s view state is  disabled, however, on each postback the GridView&#39;s data is rebound to  its underlying data source, which causes the Calendar&#39;s selected date to  be set &lt;em&gt;back&lt;/em&gt; to the employee&#39;s &lt;code&gt;HireDate&lt;/code&gt;, overwriting the date chosen by the user.&lt;/div&gt;For this tutorial this is a moot discussion since the user is not able to update the employee&#39;s &lt;code&gt;HireDate&lt;/code&gt;.  It would probably be best to configure the Calendar control so that its  dates are not selectable. Regardless, this tutorial shows that in some  circumstances view state must be enabled in order to provide certain  functionality.&lt;br /&gt;
&lt;h2&gt;Step 4: Showing the Number of Days the Employee Has Worked for the Company&lt;/h2&gt;So far we have seen two applications of TemplateFields:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Combining two or more data field values into one column, and&lt;/li&gt;
&lt;li&gt;Expressing a data field value using a Web control instead of text&lt;/li&gt;
&lt;/ul&gt;A third use of TemplateFields is in displaying metadata about the  GridView&#39;s underlying data. In addition to showing the employees&#39; hire  dates, for example, we might also want to have a column that displays  how many total days they&#39;ve been on the job. &lt;br /&gt;
Yet another use of TemplateFields arises in scenarios when the  underlying data needs to be displayed differently in the web page report  than in the format it&#39;s stored in the database. Imagine that the &lt;code&gt;Employees&lt;/code&gt; table had a &lt;code&gt;Gender&lt;/code&gt; field that stored the character &lt;code&gt;M&lt;/code&gt; or &lt;code&gt;F&lt;/code&gt;  to indicate the sex of the employee. When displaying this information  in a web page we might want to show the gender as either &quot;Male&quot; or  &quot;Female&quot;, as opposed to just &quot;M&quot; or &quot;F&quot;.&lt;br /&gt;
Both of these scenarios can be handled by creating a &lt;em&gt;formatting method&lt;/em&gt; in the ASP.NET page&#39;s code-behind class (or in a separate class library, implemented as a &lt;code&gt;static&lt;/code&gt;  method) that is invoked from the template. Such a formatting method is  invoked from the template using the same databinding syntax seen  earlier. The formatting method can take in any number of parameters, but  must return a string. This returned string is the HTML that is injected  into the template.&lt;br /&gt;
To illustrate this concept, let&#39;s augment our tutorial to show a  column that lists the total number of days an employee has been on the  job. This formatting method will take in a &lt;code&gt;Northwind.EmployeesRow&lt;/code&gt;  object and return the number of days the employee has been employed as a  string. This method can be added to the ASP.NET page&#39;s code-behind  class, but &lt;em&gt;must&lt;/em&gt; be marked as &lt;code&gt;protected&lt;/code&gt; or &lt;code&gt;public&lt;/code&gt; in order to be accessible from the template.&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code5&quot;&gt;protected string DisplayDaysOnJob(Northwind.EmployeesRow employee) {     // Make sure HiredDate is not null... if so, return &quot;Unknown&quot;     if (employee.IsHireDateNull())         return &quot;Unknown&quot;;     else     {         // Returns the number of days between the current         // date/time and HireDate         TimeSpan ts = DateTime.Now.Subtract(employee.HireDate);         return ts.Days.ToString(&quot;#,##0&quot;);     } }&lt;/code&gt; Since the &lt;code&gt;HiredDate&lt;/code&gt; field can contain &lt;code&gt;NULL&lt;/code&gt; database values we must first ensure that the value is not &lt;code&gt;NULL&lt;/code&gt; before proceeding with the calculation. If the &lt;code&gt;HiredDate&lt;/code&gt; value is &lt;code&gt;NULL&lt;/code&gt;, we simply return the string &quot;Unknown&quot;; if it is not &lt;code&gt;NULL&lt;/code&gt;, we compute the difference between the current time and the &lt;code&gt;HiredDate&lt;/code&gt; value and return the number of days.&lt;br /&gt;
To utilize this method we need to invoke it from a TemplateField in  the GridView using the databinding syntax. Start by adding a new  TemplateField to the GridView by clicking on the Edit Columns link in  the GridView&#39;s smart tag and adding a new TemplateField.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig15cs.png&quot;&gt;&lt;img alt=&quot;Add a New TemplateField to the GridView&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig15css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 15&lt;/strong&gt;: Add a New TemplateField to the GridView &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig15cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;Set this new TemplateField&#39;s &lt;code&gt;HeaderText&lt;/code&gt; property to &quot;Days on the Job&quot; and its &lt;code&gt;ItemStyle&lt;/code&gt;&#39;s &lt;code&gt;HorizontalAlign&lt;/code&gt; property to &lt;code&gt;Center&lt;/code&gt;. To call the &lt;code&gt;DisplayDaysOnJob&lt;/code&gt; method from the template, add an &lt;code&gt;ItemTemplate&lt;/code&gt; and use the following databinding syntax:&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code6&quot;&gt;&amp;lt;%# DisplayDaysOnJob((Northwind.EmployeesRow)      ((System.Data.DataRowView) Container.DataItem).Row) %&amp;gt;&lt;/code&gt; &lt;code&gt;Container.DataItem&lt;/code&gt; returns a &lt;code&gt;DataRowView&lt;/code&gt; object corresponding to the &lt;code&gt;DataSource&lt;/code&gt; record bound to the &lt;code&gt;GridViewRow&lt;/code&gt;. Its &lt;code&gt;Row&lt;/code&gt; property returns the strongly-typed &lt;code&gt;Northwind.EmployeesRow&lt;/code&gt;, which is passed to the &lt;code&gt;DisplayDaysOnJob&lt;/code&gt; method. This databinding syntax can appear directly in the &lt;code&gt;ItemTemplate&lt;/code&gt; (as shown in the declarative syntax below) or can be assigned to the &lt;code&gt;Text&lt;/code&gt; property of a Label Web control.&lt;br /&gt;
&lt;div class=&quot;blockquote&quot;&gt;&lt;strong&gt;Note:&lt;/strong&gt; Alternatively, instead of passing in an &lt;code&gt;EmployeesRow&lt;/code&gt; instance, we could just pass in the &lt;code&gt;HireDate&lt;/code&gt; value using &lt;code&gt;&amp;lt;%# DisplayDaysOnJob(Eval(&quot;HireDate&quot;)) %&amp;gt;&lt;/code&gt;. However, the &lt;code&gt;Eval&lt;/code&gt; method returns an &lt;code&gt;object&lt;/code&gt;, so we&#39;d have to change our &lt;code&gt;DisplayDaysOnJob&lt;/code&gt; method signature to accept an input parameter of type &lt;code&gt;object&lt;/code&gt;, instead. We can&#39;t blindly cast the &lt;code&gt;Eval(&quot;HireDate&quot;)&lt;/code&gt; call to a &lt;code&gt;DateTime&lt;/code&gt; because the &lt;code&gt;HireDate&lt;/code&gt; column in the &lt;code&gt;Employees&lt;/code&gt; table can contain &lt;code&gt;NULL&lt;/code&gt; values. Therefore, we&#39;d need to accept an &lt;code&gt;object&lt;/code&gt; as the input parameter for the &lt;code&gt;DisplayDaysOnJob&lt;/code&gt; method, check to see if it had a database &lt;code&gt;NULL&lt;/code&gt; value (which can be accomplished using &lt;code&gt;Convert.IsDBNull(&lt;em&gt;objectToCheck&lt;/em&gt;)&lt;/code&gt;), and then proceed accordingly. &lt;/div&gt;Due to these subtleties, I&#39;ve opted to pass in the entire &lt;code&gt;EmployeesRow&lt;/code&gt; instance. In the next tutorial we&#39;ll see a more fitting example for using the &lt;code&gt;Eval(&quot;&lt;em&gt;columnName&lt;/em&gt;&quot;)&lt;/code&gt; syntax for passing an input parameter into a formatting method.&lt;br /&gt;
The following shows the declarative syntax for our GridView after the TemplateField has been added and the &lt;code&gt;------------------------------------------------------------------------ &lt;/code&gt;&lt;br /&gt;
&lt;code&gt;DisplayDaysOnJob&lt;/code&gt; method called from the &lt;code&gt;ItemTemplate&lt;/code&gt;:&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code7&quot;&gt;&amp;lt;asp:GridView ID=&quot;GridView1&quot; runat=&quot;server&quot;     AutoGenerateColumns=&quot;False&quot; DataKeyNames=&quot;EmployeeID&quot;     DataSourceID=&quot;ObjectDataSource1&quot;&amp;gt;     &amp;lt;Columns&amp;gt;         &amp;lt;asp:TemplateField HeaderText=&quot;Name&quot; SortExpression=&quot;FirstName&quot;&amp;gt;             &amp;lt;EditItemTemplate&amp;gt;                 &amp;lt;asp:TextBox ID=&quot;TextBox1&quot; runat=&quot;server&quot;                     Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;             &amp;lt;/EditItemTemplate&amp;gt;             &amp;lt;ItemTemplate&amp;gt;                 &amp;lt;asp:Label ID=&quot;Label1&quot; runat=&quot;server&quot;                     Text=&#39;&amp;lt;%# Bind(&quot;FirstName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:Label&amp;gt;                 &amp;lt;asp:Label ID=&quot;Label2&quot; runat=&quot;server&quot;                     Text=&#39;&amp;lt;%# Eval(&quot;LastName&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:Label&amp;gt;             &amp;lt;/ItemTemplate&amp;gt;         &amp;lt;/asp:TemplateField&amp;gt;         &amp;lt;asp:BoundField DataField=&quot;Title&quot; HeaderText=&quot;Title&quot;             SortExpression=&quot;Title&quot; /&amp;gt;         &amp;lt;asp:TemplateField HeaderText=&quot;HireDate&quot;             SortExpression=&quot;HireDate&quot;&amp;gt;             &amp;lt;EditItemTemplate&amp;gt;                 &amp;lt;asp:TextBox ID=&quot;TextBox2&quot; runat=&quot;server&quot;                     Text=&#39;&amp;lt;%# Bind(&quot;HireDate&quot;) %&amp;gt;&#39;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;             &amp;lt;/EditItemTemplate&amp;gt;             &amp;lt;ItemTemplate&amp;gt;                 &amp;lt;asp:Calendar ID=&quot;Calendar1&quot; runat=&quot;server&quot;                     SelectedDate=&#39;&amp;lt;%# Bind(&quot;HireDate&quot;) %&amp;gt;&#39;                     VisibleDate=&#39;&amp;lt;%# Eval(&quot;HireDate&quot;) %&amp;gt;&#39;&amp;gt;             &amp;lt;/asp:Calendar&amp;gt;             &amp;lt;/ItemTemplate&amp;gt;         &amp;lt;/asp:TemplateField&amp;gt;         &amp;lt;asp:TemplateField HeaderText=&quot;Days On The Job&quot;&amp;gt;             &amp;lt;ItemTemplate&amp;gt;                 &amp;lt;%# DisplayDaysOnJob((Northwind.EmployeesRow)                     ((System.Data.DataRowView) Container.DataItem).Row) %&amp;gt;             &amp;lt;/ItemTemplate&amp;gt;             &amp;lt;ItemStyle HorizontalAlign=&quot;Center&quot; /&amp;gt;         &amp;lt;/asp:TemplateField&amp;gt;     &amp;lt;/Columns&amp;gt; &amp;lt;/asp:GridView&amp;gt;&lt;/code&gt;&lt;br /&gt;
&lt;code class=&quot;code_block&quot; id=&quot;code7&quot;&gt;-------------------------------------------------------------------------------&amp;nbsp;&lt;/code&gt; &lt;br /&gt;
Figure 16 shows the completed tutorial, when viewed through a browser.&lt;br /&gt;
&lt;div class=&quot;photo_container&quot;&gt; &lt;div class=&quot;photo_container_inner&quot;&gt; &lt;div class=&quot;photo_border&quot;&gt;&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig16cs.png&quot;&gt;&lt;img alt=&quot;The Number of Days the Employee Has Been on the Job is Displayed&quot; src=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig16css.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;caption&quot;&gt;&lt;strong&gt;Figure 16&lt;/strong&gt;: The Number of Days the Employee Has Been on the Job is Displayed &lt;span class=&quot;nobreak&quot;&gt;(&lt;a href=&quot;http://static.asp.net/asp.net/images/dataaccess/12fig16cs.png&quot;&gt;Click to view full-size image&lt;/a&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;clear&quot;&gt;&amp;amp;nbsp;&lt;/div&gt;&lt;/div&gt;&lt;h2&gt;Summary&lt;/h2&gt;The TemplateField in the GridView control allows for a higher degree  of flexibility in displaying data than is available with the other field  controls. TemplateFields are ideal for situations where:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Multiple data fields need to be displayed in one GridView column&lt;/li&gt;
&lt;li&gt;The data is best expressed using a Web control rather than plain text&lt;/li&gt;
&lt;li&gt;The output depends on the underlying data, such as displaying metadata or in reformatting the data&lt;/li&gt;
&lt;/ul&gt;In addition to customizing the display of data, TemplateFields are  also used for customizing the user interfaces used for editing and  inserting data, as we&#39;ll see in future tutorials.&lt;br /&gt;
The next two tutorials continue exploring templates, starting with a  look at using TemplateFields in a DetailsView. Following that, we&#39;ll  turn to the FormView, which uses templates in lieu of fields to provide  greater flexibility in the layout and structure of the data.&lt;br /&gt;
Happy Programming!&lt;br /&gt;
&lt;h2&gt;About the Author&lt;/h2&gt;&lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;Scott                         Mitchell&lt;/a&gt;, author of seven ASP/ASP.NET books and founder of                          &lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;4GuysFromRolla.com&lt;/a&gt;,                          has been working with Microsoft Web technologies since 1998. Scott works                          as an independent consultant, trainer, and writer.  His latest book is                          &lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;&lt;em&gt;Sams                          Teach Yourself ASP.NET 2.0 in 24 Hours&lt;/em&gt;&lt;/a&gt;.  He can be reached at                          &lt;a href=&quot;mailto:http://library82.blogspot.com/&quot;&gt;http://library82.blogspot.com/&lt;/a&gt;                          or via his blog, which can be found at                          &lt;a href=&quot;http://library82.blogspot.com/&quot;&gt;http://ScottOnWriting.NET&lt;/a&gt;.&lt;br /&gt;
&lt;h2&gt;Special Thanks To &lt;/h2&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/5349022589273420819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/using-templatefields-in-gridview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5349022589273420819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/5349022589273420819'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/using-templatefields-in-gridview.html' title='Using TemplateFields in the GridView Control'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6844089548325201736.post-8950584382770729866</id><published>2011-06-18T07:34:00.003-07:00</published><updated>2011-06-18T07:34:33.974-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Standard ASP.NET Web Server Controls"/><title type='text'>Standard ASP.NET Web Server Controls</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;table class=&quot;style2&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;span id=&quot;ctl00_ContentPlaceHolder1_lblHeader&quot; style=&quot;background-color: highlight; border: 2px solid DarkGray; color: white; display: inline-block; font-family: Arial; font-size: x-small; font-weight: bold; width: 643px;&quot;&gt;Standard ASP.NET Web Server Controls &lt;/span&gt;             &lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;             &lt;td&gt;                              &lt;/td&gt;         &lt;/tr&gt;
&lt;tr&gt;             &lt;td&gt;                 &lt;span style=&quot;color: #003399;&quot;&gt;&lt;b&gt;Web Server Controls&lt;/b&gt;&lt;/span&gt; To simplify Web                  page development, you can use ASP.NET Web server controls. Web server controls                  provide familiar types of functionality for pages, such as displaying text                  boxes, buttons, check boxes, menus, and so on.                                                 &lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aspdotnetweb.blogspot.com/feeds/8950584382770729866/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/standard-aspnet-web-server-controls.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/8950584382770729866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6844089548325201736/posts/default/8950584382770729866'/><link rel='alternate' type='text/html' href='http://aspdotnetweb.blogspot.com/2011/06/standard-aspnet-web-server-controls.html' title='Standard ASP.NET Web Server Controls'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>