文件:changeimage.ascx
      changeimage.ascx.vb
演示页面:changeimage.aspxchangeimage.ascx:<%@ Control Language="vb" AutoEventWireup="false" Codebehind="changimage.ascx.vb" Inherits="gbnet.changimage" TargetSchema="http://schemas.microsoft.com/intellisense/ie5" %>
<FONT face="宋体"></FONT>changeimage.ascx.vb:Imports System.Drawing
Imports System.Drawing.Imaging
Public Class changimage
    Inherits System.Web.UI.UserControl#Region " Web 窗体设计器生成的代码 "    '该调用是 Web 窗体设计器所必需的。
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()    End Sub    '注意: 以下占位符声明是 Web 窗体设计器所必需的。
    '不要删除或移动它。
    Private designerPlaceholderDeclaration As System.Object    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
        'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
        '不要使用代码编辑器修改它。
        InitializeComponent()
    End Sub#End Region
    Private url1 As String    Private lngsiz1 As Long = 0
    Private lngwid1 As Long = 0
    Private lnghgt1 As Long = 0
    Property lngsiz() As Long
        Get
            lngsiz = lngsiz1
        End Get
        Set(ByVal Value As Long)
            lngsiz = Value
        End Set
    End Property
    Property lngwid() As Long
        Get
            lngwid = lngwid1
        End Get
        Set(ByVal Value As Long)
            lngwid = Value
        End Set
    End Property
    Property lnghgt() As Long
        Get
            lnghgt = lnghgt1
        End Get
        Set(ByVal Value As Long)
            lnghgt = Value
        End Set
    End Property
    Property url() As String
        Get
            url = url1
        End Get
        Set(ByVal Value As String)            url = Value
        End Set
    End Property    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '===========================读取图象
        Dim bmpinput As Bitmap
        Dim bmptemp As Bitmap
        If url = "" Then
            bmpinput = New Bitmap(100, 50)
            Dim gfxinput As Graphics = Graphics.FromImage(bmpinput)
            gfxinput.FillRectangle(New SolidBrush(Color.FromArgb(255, 204, 204, 204)), 0, 0, 11, 50)
            gfxinput.Dispose()
        Else
            bmpinput = Bitmap.FromFile(Server.MapPath(url))
        End If
        '===========================编辑图象====================================
        If lngsiz > 0 Then
            If bmpinput.Height > bmpinput.Width Then
                lngwid = (lngsiz * bmpinput.Width) / bmpinput.Height
                lnghgt = lngsiz
            Else
                lnghgt = (lngsiz * bmpinput.Width) / bmpinput.Width
                lngwid = lngsiz
            End If
        ElseIf lnghgt > 0 Then
            lngwid = (lnghgt * bmpinput.Width) / bmpinput.Height        ElseIf lngwid > 0 Then
            lnghgt = (lngwid * bmpinput.Width) / bmpinput.Width        End If        '=========================输出图象====================================        If (lnghgt < 1) Or (bmpinput.Height < lnghgt) Then
            writepicture(bmpinput)
        Else
            bmptemp = New Bitmap(bmpinput, lngwid, lnghgt)
            writepicture(bmptemp)
        End If    End Sub    Sub writepicture(ByRef abmppic As Bitmap)
        If LCase(Right(url, 4)) = ".gif" Then
            Response.ContentType = "image/gif"
            abmppic.Save(Response.OutputStream, ImageFormat.Gif)
        Else
            Response.ContentType = "image/jpeg"
            abmppic.Save(Response.OutputStream, ImageFormat.Jpeg)
        End If    End SubEnd Class
changeimage.aspx:<%@ Register TagPrefix="uc1" TagName="changimage" Src="changimage.ascx" %>
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="changeimage.aspx.vb" Inherits="gbnet.changeimage" Debug="true"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>changeimage</title>
<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" content="Visual Basic .NET 7.1">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<FONT face="宋体">
<uc1:changimage id="Changimage1" url="Images/face/08.gif" lngsiz=28 runat="server"></uc1:changimage></FONT>
</form>
</body>
</HTML>
出错提示:
“/gbnet”应用程序中的服务器错误。
--------------------------------------------------------------------------------发生类型为 System.StackOverflowException 的异常。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.StackOverflowException: 发生类型为 System.StackOverflowException 的异常。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  堆栈跟踪: 
[StackOverflowException: 发生类型为 System.StackOverflowException 的异常。] 
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:1.1.4322.573; ASP.NET 版本:1.1.4322.573