摘要: 接上篇用于Web的TreeListView控件(多列的树形控件) 这次增加了线条,线条还是比较完美的,行高可以任意调整 :)如下图:下载演示如何使用,请下载演示,看下就清楚了。下面粘贴部分使用代码:[代码] 阅读全文
posted @ 2008-08-14 16:39 Hurry 阅读(1932) | 评论 (12)编辑

    最近老是要用到显示多列的树型结构,而treeview只能显示单列,gridview又不能显示树型的结构,所以打算自己做个控件来解决这个问题,暂时取名叫:TreeListView。先说下我的思路,园内的朋友如果有更好的思路或想法,请反馈。

    1.由于是多列,存在上下对齐问题,所以我用table呈现。

    2.如何记录树形的结构关系?
        给每行的tr加个属性 id 和childids ,id 是唯一的,childids记录他的子节点的id,多个id用“,”隔开。 (<tr id="1" depth="1" childids="2,3" >

    主要就这2点,具体怎么写就比较简单了,我就不说了,先上图

上面就是我的实现效果(下载演示

现在只实现个显示功能,事件啥的都没实现,半成品都不到,所以没提供代码,你可以通过Reflector.exe查看或者留下你的mail。

如果让控件又好用有灵活,这个问题真是比较头痛,想来想去最后就做成这个样子了。

虽然只做了一点点,还是发出来了,希望各位提供反馈意见,以便下个版本做的更好。

---------------------------

如何使用:

后台:

Employee e1 = new Employee("Nancy""Davalio");
            Employee e2 
= new Employee("Andrew""Fuller");
            Employee e3 
= new Employee("Huang""Hurry");
            Employee e4 
= new Employee("Jin""Faster");

            TreeListNode root 
= new TreeListNode();
            root.Text 
= "root";
            root.DataSource 
= e1;
            TreeListNode node 
= new TreeListNode();
            node.Text 
= "node1";
            node.DataSource 
= e2;
            TreeListNode node12 
= new TreeListNode();
            node12.Text 
= "node12";
            node12.DataSource 
= e3;
            TreeListNode node2 
= new TreeListNode();
            node2.Text 
= "node2";
            node2.DataSource 
= e4;

            node.ChildNodes.Add(node12);
            root.ChildNodes.Add(node);
            root.ChildNodes.Add(node2);
            

            
this.TreeListView1.DataSource = root;
            
this.TreeListView1.DataBind();

页面部分:

 

 

<custom:TreeListView ID="TreeListView1" runat="server">
    
<HeaderTemplate>
    
<table width="500" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">
    
<tr height="30" bgcolor="#FFFFFF">
    
<td>ID</td>
    
<td width="120px">Text</td>
    
<td width="80px">FirstName</td>
    
<td width="80px">LastName</td>
    
</tr>
    
</HeaderTemplate>
    
<ItemTemplate>
    
<tr <%# ((TreeListNode)Container.DataItem).TreeTr%> bgcolor="#FFFFFF">
        
<td height="30"><%# ((TreeListNode)Container.DataItem).TreeImage%><%# ((TreeListNode)Container.DataItem).ID%></td>
        
<td><%# ((TreeListNode)Container.DataItem).Text%></td>
        
<td><%# ((Employee)((TreeListNode)Container.DataItem).DataSource).FirstName%></td>
        
<td><%# ((Employee)((TreeListNode)Container.DataItem).DataSource).LastName%></td>
        
      
</tr>
    
</ItemTemplate>
    
<FooterTemplate>
    
</table>
    
</FooterTemplate>
    
</custom:TreeListView>

 

 

posted @ 2008-07-15 15:01 Hurry 阅读(1747) | 评论 (14)编辑
1.新建作业
2.添加常规
3.添加步骤,选择T-SQL 输入下面语句(databasename修改为自己的数据库名称.D:\bak\改为自己的备份路径)
DECLARE @strPath NVARCHAR(200)
set @strPath = convert(NVARCHAR(19),getdate(),120)
set @strPath = REPLACE(@strPath, ':' , '.')
set @strPath = 'D:\bak\' + @strPath + '.bak'
BACKUP DATABASE [databasename] TO DISK = @strPath WITH NOINIT , NOUNLOAD , NOSKIP , STATS = 10, NOFORMAT

 

4.添加计划,设置频率,时间等
5.要记得启用 Sql Server Agent 服务

备注:
一. convert:
上面的 convert(NVARCHAR(19),getdate(),120)  这个120是什么意思? 见下表:

二.REPLACE:
REPLACE ( 'string_expression1' , 'string_expression2' , 'string_expression3' )
用第三个表达式替换第一个字符串表达式中出现的所有第二个指定字符串表达式的匹配项。
替换':' 是因为路径中有':'会报错

posted @ 2007-01-22 13:57 Hurry 阅读(1622) | 评论 (0)编辑

      在asp.net 2.0 Theme 很容易实现换肤,但也紧限于,文字,背景,图片之类的,要用它来改变布局就比较麻烦。Master Page 在众多教程中并没提到用它来改变变局,呵呵,现在我们用它来轻松实现布局(在配合Theme 可实现强大的换肤功能)。

代码又少又简单,就不做说明了,点击下载演示 。效果图如下:


  

 

posted @ 2007-01-11 22:35 Hurry 阅读(3693) | 评论 (4)编辑