基于.NET CompactFramework的九宫格控件

在网上经常看见有人询问Windows Mobile下的九宫格控件的做法,我曾经也多次上网搜索,但找到的大部分都是c++版本的,于是萌发了自己写一个的念头,先上图片。

选中后。

选中的效果其实是两张图片的交替结果,因为只针对了240×320这种样式,所以可能很多地方写死了,下面对部分源码的解析。

先定义一个继承自Control的类FlexStartMenu

publicclassFlexStartMenu:System.Windows.Forms.Control

定义一个选项子类,因为这个控件中的图片中包含文字,因此我没有将子项的文字画到控件当中去,如果你们有需求的话可以修改OnPain事件,添加一个画文字的方法。

子项类

public class FlexStartItem
  {
    /**//// <summary>
    /// 显示文本
    /// </summary>
    public string ItemText
    {
      get;
      set;
    }
    /**//// <summary>
    /// 选项图片
    /// </summary>
    public Image Icon
    {
      get;
      set;
    }
    /**//// <summary>
    /// 选中时的图片
    /// </summary>
    public Image PressIcon
    {
      get;
      set;
    }
    /**//// <summary>
    /// 选项距离顶部的距离
    /// </summary>
    public int Top
    {
      get;
      set;
    }
    /**//// <summary>
    /// 选项距离左边栏的距离
    /// </summary>
    public int Left
    {
      get;
      set;
    }
    /**//// <summary>
    /// 选项编号
    /// </summary>
    public int Index
    {
      get;
      set;
    }
    /**//// <summary>
    /// 是否被选中
    /// </summary>
    public bool Press
    {
      get;
      set;
    }
  }

时间: 2025-01-01 06:51:11

基于.NET CompactFramework的九宫格控件的相关文章

upload-做一个基于jquery 的上传控件

问题描述 做一个基于jquery 的上传控件 我是新手,我想做一个基于jquery upload的上传控件需要从哪方面考虑?谢谢 解决方案 很多居于jquery的上传插件,如ajaxfileupload,jquery.form.js,uploadify等..自己找下API看 http://www.cnblogs.com/kissdodog/archive/2012/12/15/2819025.htmlhttp://plugins.jquery.com/form/ 解决方案二: http://ww

jQuery:收集一些基于jQuery框架开发的控件/jquery插件2

Horizontal accordion: jQuery基于jQuery开发,非常简单的水平方向折叠控件.主页:http://letmehaveblog.blogspot.com/2007/10/haccordion-simple-horizontal-accordion.html (无法找到)下载:http://letmehaveblog.blogspot.com/2007/10/haccordion-simple-horizontal-accordion.html 示例:http://let

基于jQuery的日期选择控件_jquery

但是也有些问题,第一画日历有点慢,第二兼容性不太好IE Only,第三它不是基于jQuery的哈哈. 那还是老规矩,做之前先看下效果   这下是更酷的Ext风格了. 从上图我们可以看出这个控件其实有两个视图一个日期月视图,还有一个是年月选择视图. 1:还是先从HTML入手 日期控件确定HTML其实还是比较简单,因为明摆着是列表的数据格式,当然主要是采用table了. 两个视图分别用两个Div包裹,控制div的显示隐藏即可以切换视图了.完整的HTMl结构大家可以用IEDeveloper看一下Dem

jQuery:收集一些基于jQuery框架开发的控件/jquery插件

Coda Popup Bubbles采用jQuery开发,类似"冒泡"效果的提醒弹出框.主页:http://jqueryfordesigners.com/coda-popup-bubbles/ 下载:http://jqueryfordesigners.com/coda-popup-bubbles/ (没找到)示例:http://jqueryfordesigners.com/demo/coda-bubble.html Simple Effects PluginsjQuery特效插件,可以

基于AJAX技术的DataGrid控件编程

ajax|datagrid|datagrid控件|编程 简介 在传统的Web开发中,每次DataGrid控件填充或更新都相应于一次到服务器的数据回馈.但是,借助于AJAX技术,我们可以在不进行表单提交(刷新)的情况下即可以填充DataGrid控件. 在本文中,我们通过一个简单示例并借助于一个DropDownList控件的帮助来讨论如何达到这一目的.在这个例子中,我们使用了一个DropDownList控件:一旦改变DropDownList的值,它即用相应的城市名来填充DataGrid控件,在此过程

基于jquery实现智能提示控件intellSeach.js_jquery

一.需求 我们经常会遇到[站内搜索]的需求,为了提高用户体验,我们希望能做到像百度那样的即时智能提示.例如:某公司人事管理系统,想搜索李XX,只要输入"李",系统自然会提示一些姓李的员工,这样方便用户使用.说白了,就是用户边输入,系统会提示相关的结果:或者,当用户点击搜索框时,就推荐一些内容,如360.百度都会提示今天的主要新闻或搜索量大的内容. jquery 已经有一个这样的插件了,叫 autocomplete, 但我觉得不好用.关于autocomplete的介绍也很多,有兴趣的朋友

基于jquery的让页面控件不可用的实现代码_jquery

应用背景 当用户需要某项功能时要填写一些表单信息,在填写完成并提交后,该部分信息是不允许再次修改的.表单包含TextBox.DropDownList.CheckBox等控件. 需求实现 第一种方案,绑定用户填写的数据时,设置控件的Enable属性为False.如果页面的表单数较少时可采用这样的方法,但是如果在表单较多的情况下则并不是更好的方法. 第二种方案,使用Foreach访问页面控件,判断类型如果是TextBox.DropDownList.CheckBox等,则设置Enable=False.

五:理解控件的运行机制(例:基于Control命名空间的简单控件)

一:先用最简短的话说点理论的1.asp.net中所有的标准控件都可以重写 2.和控件相关的命名空间有 System.Web.UI.Control是所有控件的基类只提供简单的呈现逻辑,不支持样式表 System.Web.UI.WebControls.WebControl继承自Control支持控件外观 System.Web.UI.WebControls.CompositeControl继承自WebControl类派生出多个控件合成的复合控件 3.控件树的实现原理首先Page类本身就是一个控件,它继

基于JQuery EasyUI的WebMVC控件封装(含源码)

JQuery EasyUI类库,大家不会陌生,出来已经有很多年了.个人感觉还是很好用的,作者更新频率也很快,bug也及时修复. 最近在整理以前的代码,找到了这个组件,它是将EasyUI组件封装成MVC控件,这样我们就可以不用写那些html标签了,我们先看看调用方式 <form id="form1"> @Html.HiddenFor(c => c.ID) @Html.HiddenFor(c => c.EditMode) @Html.HiddenFor(c =>