技术先锋

 

2012年3月22日

Devpress.XtraGrid.GridControl 笔记(转载)

摘要: 1,增加新行用InitNewRow事件,给新行某字段赋值。后结束编辑。private void grdView_InitNewRow(object sender, DevExpress.XtraGrid.Views.Grid.InitNewRowEventArgs e) { DevExpress.XtraGrid.Views.Grid.GridView view = sender as DevExpress.XtraGrid.Views.Grid.GridView; view.SetRowCellValue(e.RowHandle, view.Columns["EnterID&quo阅读全文

posted @ 2012-03-22 10:48 技术先锋 阅读(151) 评论(0) 编辑

gridControl repositoryItemLookUpEdit控件使用

      //费用下拉邦定

     repositoryItemLookUpEdit.name="riglueFee";
            riglueFee.DisplayMember = "FeeName"; //这里要注意大小写,跟数据库保持一致
            riglueFee.ValueMember = "FeeId";
            riglueFee.DataSource = feeDt;

            LookUpColumnInfo column = new LookUpColumnInfo("FeeName", "费用名称", 20, FormatType.None, "", true, HorzAlignment.Default, ColumnSortOrder.None);
            riglueFee.Columns.Add(column);

在gridcontrol列中邦定id值

 

 

 

设置自动增加的行号,需要先添加给gridview添加事件CustomDrawRowIndicator 

  

    private void gridview_CustomDrawRowIndicator(object sender,DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e) 

    { 

        if (e.Info.IsRowIndicator && e.RowHandle >= 0) 

                e.Info.DisplayText = (e.RowHandle + 1).ToString(); 

    } 

posted @ 2012-03-22 10:18 技术先锋 阅读(89) 评论(0) 编辑

2012年3月10日

多数据库导数据

set nocount off
declare @datetime as varchar(255)
--set @datetime='''2011-07-27 10:58'''
declare @DBName as varchar(255)
Create table #temp(Faccount varchar(255),fnumber varchar(255),fname varchar(255))
declare cs_DBName cursor for select name from sysdatabases where name like '%sr%' order by name
open cs_DBName
fetch next from cs_DBName into @DBName
while @@fetch_Status =0
begin
exec('insert into #temp select '''+@DBName+''',fnumber,fname from '+@DBName+ '.dbo.t_ICItem where fname like ''%解百纳%''')
--select * from @DBName.dbo.t_log where substring(convert(varchar(108),fDATE,120),1,16)=@datetime
--
-- SELECT * FROM #temp drop table #temp
fetch next from cs_DBName into @DBName
end
close cs_DBName
DEALLOCATE cs_DBName
select distinct * from #temp
drop table  #temp

posted @ 2012-03-10 16:54 技术先锋 阅读(6) 评论(0) 编辑

2012年2月15日

GridControl控件使用小结

GridControl增加空白行

    GridControl在未邦定数据源之前,是无法添加行的。先要邦定一个数据源,哪怕是个空数据源

     this.gridView1.AddNewRow();

GridControl单格输入

    单元格输完数据后清空的情况,是因为字段没有邦定。邦定一下字段就可能了。

    这里发现一个小bug:有时候select * from table ,字段邦定数据显示不出来。这种情况下用   select field1,field2 from table

GridControl单格显示类型:比如货币型: this.colUnitPrice.DisplayFormat.FormatString = "C";
    this.colUnitPrice.DisplayFormat.FormatType = FormatType.Numeric;  //这句一定要加上,否则没有效果

  

    

posted @ 2012-02-15 16:29 技术先锋 阅读(54) 评论(0) 编辑

2011年11月29日

VS项目引用,无法更新

今天遇到一个问题,VS项目引用,但是代码更新了之后,还是执行原来的代码。后来我想肯定是DLL没有更新掉,最后在网上找到一个方法:

右击解决方案---》配置管理器----》全部选择《Debug》---->生成打上勾

posted @ 2011-11-29 15:06 技术先锋 阅读(36) 评论(0) 编辑

2011年10月31日

.net架构的最后思考(箴言)

箴言1--凡事无绝对

凡事无绝对。作为架构师,你永远不会对任何事有百分之百的把握,你永远无法面面俱到。不过在这个位置上,你必须评估所有的可选方案,并做出有足够预见性的正确决策。你需为自己争取一些时间,以便慢慢思考,因此首先说"凡事无绝对“,然后解释为什么是这样,变数有哪些。若你还不确定有哪些变数,那么可以选用这个通用的回答----“这取决于上下文”。

箴言2--需求是超越一切存在的

架构仅仅是软件 项目中一个自的链接部分。客户将说出他们需要什么,若是客户不清楚自的需,那么会有人引导直至得明确的答案,这是分析师的职责。项目经理将为这个已经正式确定的项目安排基础设施。架构师会得到所有的需求,并为开发者提供设计。开发者将按照架构的意图开发。数据库管理员也会尽力让数据库能良好支持应用程序。你会认识到,客户位于这个链条的顶端,且客户的需求才是最重要的部分,客户所需要的东西叫做需求。当然,没有几个客户知道他自己真正需要的是什么,因此需求会不停地变化。

箴言3--根据接口编程

虽然我们是依靠最终实现代码来完成需求的,不过仍应该尽可能地使用接口。请牢记“没有接口的话就不要开始实现”这句话。仔细分析,你总会找到可以提取的接口。

箴言4--保持简单,但不过于简单

你应该听说过Kiss(Keep It Simple Stupid)原则,但这只是我们修改后的观点。简洁明了通常就意味着优秀。以简单为目标,不过要留有自己的底线。若是低于这个底线,那你的解决方案将变得过于简单,这并不是一件好事。

箴言5--继承是为了多态,不是重用

面向对象编程让我们仅编写一个类,然后不停地重用并根据需要扩展,这是依靠继承实现的。不过这就是类重用的全部吗?“重用”这个概念要比你延续一眼看上去更加微妙。多态是面向对象编程的核惦功能,意味着你可以互换地使用两个继承类。同时,有些人给出了总结:“重用是继承的一个附带功能。”不过重用不应该成为你的根目标,换句话说,不要仅为了重用而使用继承。最好是编写一个新的类来满足需求,而不是继承某个原本不是完此工作的现有类。

箴言6---不要在非数据访问层中使用SQL

牢记这一条:分离关注点。将数据访问代码和细节(例如,连接字符吕、命令和数据表名)先放在一边。或早或晚你总会开始处理,不过不是在设计业务逻辑层和表现层时。如果可能,请将持久化工作交给对象/关系映射(object/Relation Mapper)等专门的工具处理。

箴言7--首先考虑可维护性

若你仅能为软件选择一个特性,那么应该如何选择呢?选择可伸缩性、安全性、性能、可测试性还是可用性呢?在我们看来,上述这些都不是最重要的,最重要的是可维护性。有了可维护性,上述所有的特性都可以在日后实现。

箴言8---所有的用户输入都是罪恶的

你应该早已听说过这种说法。“纸包不住火”,若是有某种途径让用户可以入侵,那么迟早会被用户发现。这似乎是墨菲法则,确实如此。

箴言9---事后优化

Donald Knuth曾说过,过早地优化是所有软件 罪恶的根源。我们将该说法更进一步说-----不要优化系统,而是让其设计尽可能地灵活面对改进和扩展,仅在系统完成之后,再关注纯粹的优化。

箴言10----在设计时就考虑安全性和可测试性

若你很在乎某个系统特性,那么在设计开始前就应考虑到它。安全性和可测性也是如此,甚至一个国际标准化组织(ISO)的规范也明确地阐述了这一点。

posted @ 2011-10-31 17:29 技术先锋 阅读(3512) 评论(10) 编辑

2011年9月26日

嵌入别的程序到winform(C#)

摘要: 参与http://www.cnblogs.com/eugenewu0808/archive/2009/03/19/1416624.html如果开发子系统的话,都是通过带参数的EXE文件来做的。阅读全文

posted @ 2011-09-26 11:40 技术先锋 阅读(48) 评论(0) 编辑

2011年9月23日

.net 时间类型的一小bug ToShortDateString()

摘要: 昨天在.net时间类型里发现了一小bugstring a=DateTime.Now.ToShortDateString();比如说今天是2011-09-23这里在winform里面读取出来是2011-09-23但是把它做成windows服务读取出来是2011-9-23,但是在单步调试windows服务时,在监视器里的值还是2011-09-23。如果在replace -后,再转成int时,效果明显不同。解决方法:string a=DateTime.Now.ToString("yyyy-MM-dd");这样转成int后是20110923阅读全文

posted @ 2011-09-23 09:07 技术先锋 阅读(48) 评论(0) 编辑

2011年8月25日

asp.net|C#域用户验证

摘要: [DllImport("advapi32.dll")] private static extern bool LogonUser(string lpszUsername, string lpszDomain, string lpszPassword, int dwLogonType, int dwLogonProvider, ref IntPtr phToken); protected void Page_Load(object sender, EventArgs e) { } public bool ValidateUserAccount(string AstrDomai阅读全文

posted @ 2011-08-25 15:38 技术先锋 阅读(223) 评论(0) 编辑

2011年8月3日

SQL2008多数据库查询表或删表

摘要: SQL2008和2005多数据库操作,还是有一定的区别,采用这个方法是最好的,以下提供两种方法set nocount offdeclare @DBName as varchar(255)Create table #temp(Faccount varchar(255),FDate varchar(255),FDescription varchar(255)) declare cs_DBName cursor for select name from sysdatabases where name like '%sy%' order by nameopen cs_DBNamefet阅读全文

posted @ 2011-08-03 17:19 技术先锋 阅读(52) 评论(0) 编辑

仅列出标题  下一页

导航

统计

公告