SilverLight搭建WCF聊天室详细过程(七)打开窗口后添加到任务栏
时间:2010-12-26 来源:fugitiver
上一节为大家介绍了如何打开自定义聊天窗口,包括窗口的拖动和重复打开验证,这节我主要给大家介绍在打开窗口后,模仿windows任务栏把该窗口添加到任务栏,实现最大化和最小化。
1.先贴出主要代码:

private void addTaskBar(string userName)
{
if (operation.bar.spTaskBar.Children.Where(f => (f as Button).Content.ToString() == userName).Count() == 0)
{
Button btTask = new Button();
btTask.Click += new RoutedEventHandler(btTask_Click);
btTask.Content = userName;
btTask.Style = Application.Current.Resources["tbBtTask"] as Style;
operation.bar.spTaskBar.Children.Add(btTask);
}
}
//最大化窗口
public void btTask_Click(object sender, RoutedEventArgs e)
{
chatform form = chatforms.Where(f => f.Value == (sender as Button).Content.ToString()).First().Key;
LayoutRoot.Children.Remove(form);//从当前容器中移除,目的是将其放到容器最上方
LayoutRoot.Children.Insert(LayoutRoot.Children.Count, form);//从当前容器中移除,目的是将其放到容器最上方
form.Visibility = Visibility.Visible;
}
思路,当单击用户列表里一个用户按钮时,调用addTaskBar()函数,先检测是否已经存在这个任务栏,如果没有则新建,最后添加到任务栏中,定义单击函数,当窗体为最小化时则打开该窗体,并把窗体移到容器最上方。
谢谢大家每次的意见,这次讲解占了大部分,希望对新手入门带来帮助,如果各位朋友觉得有所帮助,希望大家点下推荐,你们的支持才是我更新博客的动力,谢谢大家。
本节代码以及数据库下载
相关阅读 更多 +
排行榜 更多 +