- 浏览: 221572 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
zhangwei412827_:
[flash=200,200][/flash]
js 关键字 in 的使用方法 -
flycatdeng:
.classpath文件在哪里?
AndEngine示例运行环境搭建过程 -
revol:
请问,你是如何调用LSMessage,并弹出窗口的?
Silverlight模拟MSN和QQ即时提示消息框
LSMessagePopup.cs:
using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using System.Windows.Controls.Primitives; namespace Longshine.SLLib.LSControl { public class LSMessagePopup { /// <summary> /// Popup窗口 /// </summary> Popup _popup; public LSMessagePopup() { _popup = new Popup(); } /// <summary> /// Popup窗口内容 /// </summary> public FrameworkElement Content { set { _popup.Child = value; } get { return _popup.Child as FrameworkElement; } } /// <summary> /// Popup窗口移动时间 /// </summary> private int _moveDuration = 1; public int MoveDuration { set { _moveDuration = value; } get { return _moveDuration; } } /// <summary> /// Popup窗口停留时间 /// </summary> private int _stopDuration = 4; public int StopDuration { set { _stopDuration = value; } get { return _stopDuration; } } /// <summary> /// Popup窗口提示 /// </summary> public void Alert() { double h = Application.Current.Host.Content.ActualHeight; double w = Application.Current.Host.Content.ActualWidth; _popup.HorizontalOffset = w - Content.Width; Storyboard storybord = new Storyboard(); DoubleAnimationUsingKeyFrames _new_anim = new DoubleAnimationUsingKeyFrames(); EasingDoubleKeyFrame _frame1 = new EasingDoubleKeyFrame(); _frame1.Value = h; _frame1.KeyTime = new TimeSpan(0, 0, 0, 0); EasingDoubleKeyFrame _frame2 = new EasingDoubleKeyFrame(); _frame2.Value = h - Content.Height; _frame2.KeyTime = new TimeSpan(0, 0, 0, MoveDuration); EasingDoubleKeyFrame _frame3 = new EasingDoubleKeyFrame(); _frame3.Value = h - Content.Height; _frame3.KeyTime = new TimeSpan(0, 0, 0, MoveDuration + StopDuration); EasingDoubleKeyFrame _frame4 = new EasingDoubleKeyFrame(); _frame4.Value = h; _frame4.KeyTime = new TimeSpan(0, 0, 0, MoveDuration + StopDuration + MoveDuration); _new_anim.KeyFrames.Add(_frame1); _new_anim.KeyFrames.Add(_frame2); _new_anim.KeyFrames.Add(_frame3); _new_anim.KeyFrames.Add(_frame4); storybord.Children.Add(_new_anim); Storyboard.SetTarget(_new_anim, _popup); Storyboard.SetTargetProperty(_new_anim, new PropertyPath("VerticalOffset")); storybord.AutoReverse = false; storybord.Begin(); _popup.IsOpen = true; } } }
LSMessage.xaml:
<UserControl x:Class="Longshine.SLLib.LSControl.LSMessage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" Width="400" Height="100"> <Grid x:Name="LayoutRoot" Background="White"> <Border BorderThickness="1" BorderBrush="Black"> <Grid x:Name="ucGrid" Background="Beige"> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition/> <ColumnDefinition/> </Grid.ColumnDefinitions> <TextBlock Margin="5" Text="是否处理这些消息?" Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2"/> <Button Width="60" Height="30" Content="Yes" Click="btnYes_Click" Grid.Column="0" Grid.Row="1"/> <Button Width="60" Height="30" Content="No" Click="btnNo_Click" Grid.Column="1" Grid.Row="1"/> </Grid> </Border> </Grid> </UserControl>
LSMessage.xaml.cs
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; namespace Longshine.SLLib.LSControl { public partial class LSMessage : UserControl { public LSMessage() { InitializeComponent(); } private void btnYes_Click(object sender, RoutedEventArgs e) { this.Visibility = Visibility.Collapsed; } private void btnNo_Click(object sender, RoutedEventArgs e) { this.Visibility = Visibility.Collapsed; } } }
图片如下:
发表评论
-
以假乱真解决WebBrowser遮挡SL控件的问题
2010-09-02 11:49 1589查找了很多官网文档、资料、论坛,WebBrowser遮 ... -
Path的Data生成归总
2010-08-26 11:53 1397Path的Data数据有三种生 ... -
Path Data 常用图形(整理中....)
2010-08-26 11:38 17641 三角形 <Path Stroke="# ... -
根据类型名称获取类型的对象
2010-08-23 10:12 1716private Type GetTypeCore(string ... -
多级菜单导航工具条
2010-08-10 14:08 1636多级菜单导航工具条 animated multi-leve ... -
Image控件的属性扩展
2010-08-07 10:56 1136扩展Image的属性,显示Web下的图片。 ... -
动态加载XAML文件(2)
2010-06-09 22:28 1542C#代码部分 using System; using Sy ... -
动态加载XAML文件
2010-06-09 20:34 3790Silverlight 2 提供了 System.W ... -
允许空值的下拉框
2010-05-27 09:56 1400LSComboBoxItem.cs using Sys ... -
全局等待提示框
2010-05-27 09:42 1321xmal代码(Loading.xaml): <User ... -
分析silverlight里的URI引用资源文件的各种情况
2010-05-08 17:01 1815主要介绍一下在silverlight里的资源文件(图 ... -
Silverlight Validation
2010-05-08 14:57 1255Silverlight DataForm Valida ... -
Silverlight专业网站(整理中...)
2010-05-08 13:24 11201 Microsoft Silverlight htt ... -
Silverlight中常用方法使用总结(整理中...)
2010-05-08 11:40 8931 获取URL地址 Url = Application.Cu ... -
Silverlight同步通信
2010-05-08 11:29 2345SL调用WCF方法,默认是异步的,但有些情况,我们使用同 ...
相关推荐
总结来说,SilverlightMessageBoxes提供了一个强大的、可自定义的Silverlight消息框解决方案,通过理解和研究其源码,开发者不仅可以掌握消息框的实现细节,还可以学习到如何扩展和优化UI组件,提高应用的用户体验。...
"Silverlight模拟Office工具栏"是利用Silverlight技术来实现与Microsoft Office应用程序相似的用户界面和功能。这一主题主要关注如何在网页上构建一个看起来和操作起来都像Office应用的工具栏,提升用户体验。 ...
Silverlight消息框源码 项目描述: 简单,但是对Sliverlight开发者很实用。 很容易和现有的项目整合。 特性: --免费使用 --简单和容易扩展 --窗口包含,消息,错误,确认,文本输入,组合框输入 --提供了图标 --...
silverlight toolkit中的主题(theme)应用、SilverLight 桌面文件夹效果源码、...模拟Office工具栏源码、Silverlight首页动画效果源码、Silverlight图片滑动源码、Silverlight拖拽特性源码、Silverlight消息框源码
对于富文本框样式效果,通常会使用Silverlight的RichTextBox控件。这是一个能够处理格式化文本的控件,允许用户进行文本输入、编辑和格式设置。开发者需要深入理解RichTextBox的属性、方法和事件,例如Text、...
4. **抖动功能**:模拟QQ的抖动功能,可以通过发送特定的抖动消息给对方,然后在接收端显示相应的动画效果,例如窗口抖动或提示音效,以吸引用户的注意力。 5. **字体的改变**: richtextbox提供了更改字体的API,...
比较佩服作者的高超水平,使用Silverlight模拟出的一台趣味钢琴,这可是带有声音的钢琴哦,鼠标点击钢琴的某琴键会发出对应的声音,如果你懂得钢琴,你可以用它弹出一首曲子来,源代码公开,学习Silverlight的朋友...
【标题】"Silverlight实现的多图片列表框"是一个基于微软的Silverlight技术构建的应用示例,它展示了如何在Silverlight应用中展示多个图片,并以列表框的形式进行展示。这个项目可能是一个用户界面组件,用于在Web...
SilverlightQQ是一个基于微软的Silverlight技术开发的即时通讯应用程序,它展示了Silverlight在构建富互联网应用(RIA)方面的潜力。Silverlight,作为.NET Framework的一部分,允许开发者创建具有丰富的用户体验、...
本项目主题是“Silverlight模拟Windows Ribbon 2010界面源代码”,这涉及到的是如何使用Silverlight技术来复现微软在Windows 7及Office 2010中引入的Ribbon用户界面。 Windows Ribbon界面是一种旨在提高用户对复杂...
在Silverlight应用开发中,DataGrid控件是一个非常重要的组件,它用于展示和操作数据集。在本场景中,我们关注的是如何在Silverlight 4环境中,利用Visual Studio 2010和Windows XP系统,实现DataGrid控件对用户双击...
**Silverlight** 是微软推出的一种基于浏览器的插件技术,用于创建丰富的互动用户体验,它集成了多媒体、动画、图形和应用程序逻辑,使得Web应用能够具备更高质量的视觉表现和更强大的交互功能。以下是对Silverlight...
在"模拟资源管理器的folder项目"中,Silverlight和WCF的结合使用,主要是为了在Web环境中实现类似Windows资源管理器的功能,让用户可以浏览、管理和操作远程服务器上的文件和文件夹。以下将详细讲解这一项目的关键...
"类似QQ的SilverlightPopup"项目是基于Silverlight技术实现的一个功能,它模仿了腾讯QQ软件中的右下角消息弹出框的效果。这个弹出框不仅在外观上类似于QQ,还具有渐变消失的功能,从而为用户提供更加友好和直观的...
由于Silverlight的跨平台特性,这个富文本框应用可以无缝地在Windows和Mac OS上的主流浏览器中工作。 总的来说,Silverlight RichTextBox控件为Web应用程序提供了强大的文本编辑功能,使开发者能够构建出具有类似...
1. **跨平台支持**:Silverlight最初是为了Windows和Internet Explorer设计的,但随着时间的推移,它也支持Mac OS X和不同版本的Firefox、Safari和Chrome浏览器,实现了跨平台兼容性。 2. **丰富的媒体支持**:...
5. **提示用户**:在客户端,显示一个消息提示用户文件已准备好下载,用户点击链接即可保存Excel文件到本地。 在实现过程中,需要注意处理可能出现的错误,如文件读取异常、网络通信问题等。同时,由于Silverlight...
Silverlight是微软推出的一种富互联网应用(RIA)技术,它允许开发者创建具有丰富图形、交互性和媒体体验的Web应用。EasySL框架的出现,为开发者提供了更高效、更便捷的开发工具和组件,使得在Silverlight平台上开发...
《Silverlight和ASP.NET揭秘》是一本深入探讨这两种技术的权威指南。Silverlight,由微软开发,是一款用于创建丰富的互联网应用...书中的"说明.txt"可能包含了阅读和实践该书的建议,以及作者对相关技术的见解和提示。