精通Silverlight——11.3.1 添加应用程序异常

本文介绍如何在Silverlight项目中处理异常,通过一个示例展示了如何使用Try/Catch/Finally语法来捕捉并显示异常信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Silverlight添加异常与其他的VS项目差不多,同样使用Try/Catch/Finally语法。下面的示例程序在画布上绘制一个矩形,用来代表一个按钮,当单击该按钮时,触发一个异常,并在一个TextBlock中显示异常信息,XAML代码如下所示。

<Canvas x:Name="parentCanvas"

        xmlns="http://schemas.microsoft.com/client/2007"

        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

        Loaded="Page_Loaded"

        x:Class="OnErrorException.Page;assembly=ClientBin/OnErrorException.dll"

        Width="640"

        Height="480"

        Background="White"

        >

  <Rectangle Canvas.Left="100" Canvas.Top="100" Width="200" Height="100" Fill="Yellow" Stroke="Black" StrokeThickness="1" x:Name="btn"></Rectangle>

  <TextBlock x:Name="Msg" Canvas.Left="100" Canvas.Top="300" Foreground="Red"></TextBlock>

</Canvas>

在后置代码中,为矩形添加了一个鼠标单击事件,当单击该矩形时,直接触发一个异常,并在TextBlock对象中显示异常信息,代码如下所示。

namespace OnErrorException

{

    public partial class Page : Canvas

    {

        public void Page_Loaded(object o, EventArgs e)

        {

            // Required to initialize variables

            InitializeComponent();

            btn.MouseLeftButtonDown += new MouseEventHandler(btn_MouseLeftButtonDown);

        }

        //定义鼠标单击事件处理器,在Try块中直接触发异常。

        void btn_MouseLeftButtonDown(object sender, MouseEventArgs e)

        {

            try

            {

                throw new Exception("Generate a Error!");

            }

            catch(Exception ex)

            {

                //TextBlock用于显示异常信息

                Msg.Text = ex.Message;

            }

        }

    }

}

这段代码运行时,显示的效果如图所示。

可以像在其他.NET项目一样处理异常,或者是定义自己的异常处理器类,结合XAML图形元素和动画技术,为使用者提供有醒目的提示。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值