john.net

博客园 首页 新随笔 联系 订阅 管理
  5 Posts :: 0 Stories :: 8 Comments :: 0 Trackbacks

置顶随笔 #

摘要: 从XML读取数据,实现二级导航功能修改XML的节点可以对导航条进行扩展,效果部分类似http://silverlight.net/首页导航XML内容如下[代码]效果图项目结构图代码下载阅读全文
posted @ 2009-06-04 09:08 john.net 阅读(1434) 评论(4) 编辑

摘要: 1.扩展方法必须在非泛型静态类中定义2.扩展方法必须是静态的3.不能在静态类中声明实例成员public static class PubMethod { public static string GetIP(this Controller ctrl) { string ip; if (ctrl.HttpContext.Request.ServerVariables["HTTP_VIA"] != n...阅读全文
posted @ 2009-05-20 13:05 john.net 阅读(312) 评论(0) 编辑

2009年6月4日 #

从XML读取数据,实现二级导航功能

修改XML的节点可以对导航条进行扩展,效果部分类似http://silverlight.net/ 首页导航

XML内容如下

 1<?xml version="1.0" encoding="utf-8" ?>
 2<Entity>
 3   <Menu  ContentText = "Baidu" ToolTipText="testTool"  Summary = "testJiao1"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/">
 4     <SubMenu  ContentText = "Home" ToolTipText="testTool1"  Summary = "testJiao1"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
 5     <SubMenu  ContentText = "Home" ToolTipText="testTool1"  Summary = "testJiao1"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
 6     <SubMenu  ContentText = "Home" ToolTipText="testTool1"  Summary = "testJiao1"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
 7     <SubMenu  ContentText = "Home" ToolTipText="testTool1"  Summary = "testJiao1"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
 8  </Menu>
 9  <Menu  ContentText = "Google" ToolTipText="testTool"  Summary = "testJiao2"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/">
10    <SubMenu  ContentText = "Home" ToolTipText="testTool2"  Summary = "testJiao2"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
11    <SubMenu  ContentText = "Home" ToolTipText="testTool2"  Summary = "testJiao2"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
12    <SubMenu  ContentText = "Home" ToolTipText="testTool2"  Summary = "testJiao2"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
13  </Menu>
14  <Menu  ContentText = "Bing" ToolTipText="testTool"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/">
15    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
16    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
17  </Menu>
18  <Menu  ContentText = "Sohu" ToolTipText="testTool"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/">
19    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
20    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
21  </Menu>
22  <Menu  ContentText = "Sina" ToolTipText="testTool"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/">
23    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
24    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
25  </Menu>
26  <Menu  ContentText = "XiaoMei" ToolTipText="testTool"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/">
27    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
28    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
29  </Menu>
30  <Menu  ContentText = "Cnblogs" ToolTipText="testTool"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/">
31    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
32    <SubMenu  ContentText = "Home" ToolTipText="testTool3"  Summary = "testJiao3"  SummaryImageUri = "SilverlightImg.jpg"  NavigateUri = "http://www.cnblogs.com/cshop/"/>
33  </Menu>
34  </Entity>

效果图

项目结构图

 代码下载

posted @ 2009-06-04 09:08 john.net 阅读(1434) 评论(4) 编辑

2009年5月21日 #

摘要: //View页面代码如下[代码][代码]阅读全文
posted @ 2009-05-21 23:16 john.net 阅读(833) 评论(4) 编辑

public class SubColor
    {
        public static Color FromArgb(string color) {
            int[] a =new int[4];
            int[] b =new int[8];
            string rg1 = "#[a-fA-F0-9]{8}";
            Regex r1 = new Regex(rg1);
            if (r1.IsMatch(color))
            {
                for (int i = 0; i < 8; i++)
                {
                    switch (color.Substring(i + 1, 1))
                    {
                        case "a":
                        case "A": b[i] = 10; break;
                        case "b":
                        case "B": b[i] = 11; break;
                        case "c":
                        case "C": b[i] = 12; break;
                        case "d":
                        case "D": b[i] = 13; break;
                        case "e":
                        case "E": b[i] = 14; break;
                        case "f":
                        case "F": b[i] = 15; break;
                        default: b[i] = int.Parse(color.Substring(i + 1, 1)); break;
                    }
                }
                         }
            else
            {
                string rg2 = @"^[A-Fa-f0-9]{8}";
                Regex r2 = new Regex(rg2);
                if (r2.IsMatch(color))
                {
                    for (int i = 0; i < 8; i++)
                    {
                        switch (color.Substring(i, 1))
                        {
                            case "a":
                            case "A": b[i] = 10; break;
                            case "b":
                            case "B": b[i] = 11; break;
                            case "c":
                            case "C": b[i] = 12; break;
                            case "d":
                            case "D": b[i] = 13; break;
                            case "e":
                            case "E": b[i] = 14; break;
                            case "f":
                            case "F": b[i] = 15; break;
                            default: b[i] = int.Parse(color.Substring(i, 1)); break;
                        }
                    }
                                   }

            }

                a[0] = b[0] *16+b[1];
                a[1] = b[2] *16+b[3];
                a[2] = b[4] *16+b[5];
                a[3] = b[6] *16+b[7];

            return Color.FromArgb((byte)a[0], (byte)a[1], (byte)a[2], (byte)a[3]);
        }
    }

这样就可以使用了

testb.Color = SubColor.FromArgb("#FF000000");

teste.Color = SubColor.FromArgb("FFA9CCF2");

本人正则表达式比较烂,还望高人指点

posted @ 2009-05-21 12:35 john.net 阅读(400) 评论(0) 编辑

2009年5月20日 #

1.扩展方法必须在非泛型静态类中定义

2.扩展方法必须是静态的

3.不能在静态类中声明实例成员

public static class PubMethod
    {
        public static string GetIP(this Controller ctrl)
        {
            string ip;
            if (ctrl.HttpContext.Request.ServerVariables["HTTP_VIA"] != null)             {
                ip = ctrl.HttpContext.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();             }
            else            {
                ip = ctrl.HttpContext.Request.ServerVariables["REMOTE_ADDR"].ToString();             }
            return ip;

        }
    }

这样就可以在Action里面直接调用了 PubMethod.GetIP(this);

posted @ 2009-05-20 13:05 john.net 阅读(312) 评论(0) 编辑

异常如下:
System.Data.Services.Client.DataServiceRequestException: 处理此请求时出错。 ---> System.Data.Services.Client.DataServiceClientException:

silverlight DataService调用出错,这种情况一般都是权限不够

在DataService中

public static void InitializeService(IDataServiceConfiguration config)
        {
            // TODO: 设置规则以指明哪些实体集和服务操作是可见的、可更新的,等等。
            // 示例:
             config.SetEntitySetAccessRule("*", EntitySetRights.All);
            // config.SetServiceOperationAccessRule("MyServiceOperation", ServiceOperationRights.All);
        }

设置EntitySetRights.All就可以通过Silverlight对数据库表进行增删改了

posted @ 2009-05-20 12:56 john.net 阅读(260) 评论(0) 编辑