小编haw*_*bsl的帖子

在Winforms应用程序中使用"超链接"效果

在Winforms应用程序中,人们如何考虑使用伪装超链接?

例:

alt text http://i49.tinypic.com/ic753k.jpg

在我的示例中,您将单击"进入"Acme Corp Inc的组织记录卡或"进入"下一个约会的详细信息.

如果我们暂时忽略了用户如何编辑组织或添加/删除约会,那么在Winforms中使用蓝色和下划线表示点击此处是一个合理的用户界面,我会带你到一个新的屏幕

如:

TextBox1.Font = New Font("Blah", 8.25!, FontStyle.Underline etc
TextBox1.ForeColor = Color.Blue
Run Code Online (Sandbox Code Playgroud)

不要忘了:

TextBox1.Cursor = Cursors.Hand
Run Code Online (Sandbox Code Playgroud)

这将是一个相当丰富的应用程序(例如CRM),您有很多不同类型的屏幕,用户在各种记录之间导航.并且您希望向用户显示他可以在详细视图,网格,子项,父项,兄弟姐妹等之间导航.

优点:

  • 它对用户来说很熟悉,很明显,不会突兀或占用任何屏幕空间

  • 易于实施

  • 经常使用的替代品(带有图标的按钮,甚至只有三个点[...])看起来有点过时,在网格中效果不佳,占用空间

缺点:

  • 凭借Winforms前端的所有灵活性和控制,你应该能够设计一个智能的ui,而无需借用浏览器(也许???)

  • 这些伪链接不会表现为真正的锚标签(没有任何"访问过的"[即,如果我已经在这里,我会变成紫色]或"悬停"行为,并且没有打开新标签功能,没有很多工作)...可能会让用户烦恼?

  • 减去真正的超链接(如在电子邮件地址等) - 这些不再是"出网"链接(浏览器,电子邮件客户端)......非常小的问题?

usability user-interface winforms

8
推荐指数
1
解决办法
1792
查看次数

在没有任何工作表的情况下启动空的Excel工作簿

创建新的Excel工作簿,如下所示:

Dim xl As Excel.Application
Dim wb As Excel.Workbook
Set xl = New Excel.Application
xl.Visible = False
Set wb = xl.Workbooks.Add
Run Code Online (Sandbox Code Playgroud)

有一种简单的方法可以阻止Excel自动创建Sheet1,Sheet2,Sheet3吗?

我可以随后删除这些不需要的纸张,但这感觉就像一个笨重的解决方案.

excel vba excel-vba

8
推荐指数
1
解决办法
2万
查看次数

如何使组标题跨越Tablix列

我正在使用Microsoft Reporting Services(rdlc,Visual Studio 2010附带)

假设我想创建一个包含Group Header,detail行和组页脚的报表.(我正在使用Tablix,但如果有不同的方式,我会对它开放).

现在,有几列,但我希望组标题跨越列.那可能吗?

另一个问题:假设我想有条件地跨越我的细节行中的列,这可能吗?(如何?)

rdlc reporting-services

7
推荐指数
2
解决办法
6748
查看次数

当我们激活它时,为什么Word"没有出现"?

我们的winforms应用程序与MS Word交互,我们在生成文档时运行此代码,并且我们希望在我们的应用程序前面的Word中显示它:

[setup w as a Word interop object]

w.Visible = True
w.Activate()
Run Code Online (Sandbox Code Playgroud)

当推出到运行Office 2007的XP机器时,它按预期工作.

运行Office 2010Win7计算机上,文档加载到我们的应用程序后面并在任务栏上闪烁.

有任何想法吗?

.net ms-word z-order office-interop

7
推荐指数
1
解决办法
7165
查看次数

"Microsoft.Jet.OLEDB.4.0"提供程序未在本地计算机上注册

我的申请有问题.运行时,将显示错误

"Microsoft.Jet.OLEDB.4.0"提供程序未在本地计算机上注册.

我尝试将Platform更改为X86 CPU,但无法更改,唯一可用的选项是Any CPU.

请告知如何摆脱这个错误.

谢谢

.net vb.net jet

7
推荐指数
3
解决办法
3万
查看次数

LINQ语法占用除第一行之外的所有行?

除了第一行之外,所有行的LINQ语法是什么?LINQ提供了一个非常简洁的方法吗?

.net linq

7
推荐指数
1
解决办法
3071
查看次数

我们如何解决所有这些"从类型DBNull转换为类型字符串无效"nastiness?

在我们的应用程序中,我想不出很多我们关心空字符串字段的情况.我们只是希望它们在大多数情况下显示为空字符串.

因此,当使用内置的ADO.NET数据集/数据表时,错误:

从类型DBNull到String类型的转换无效

在引用任何旧字符串数据时,在应用程序中稍后会很常见.

这是一个特别的问题,因为它可以很容易地把我们赶出去(而且通常在测试中看不到)

我知道有各种解决方案:

1.在所有情况下检查.IsXXXNull

但:

  • 这是整个应用程序中繁琐的额外几行代码

  • 如果我们忘记支票,即使是100次中的一次,我们也有潜在的错误

2.在数据集设计器中,将字段的NullValue属性从默认的"Throw Exception"更改为"Empty"

但:

  • 我们必须识别并更改我们添加到数据集设计器的每个表和每个字符串字段(请记住默认值为"Throw Exception")

  • 如果我们在100中忘记了一次变化,我们就会潜伏着潜在的错误

3.避免在基础数据中存储Null

但:

  • 我们必须识别并更改我们添加到数据库的每个表和每个字符串字段

  • 我们并不总是对基础数据有这种控制

4.不要使用数据集设计器,将数据拉入我们自己的类对象,在我们自己的代码中处理所有DBNull混乱

但:

  • 是的,我们确实为我们的"主要"表格做到了这一点.但数据集设计器是一个很好的,快速的方法来提取选项列表或查找表,我们只需要默认的数据行为

5.使用代码生成器或框架,如CSLA而不是DataSet

但:

  • 解决一个小问题的重要一步......关于SO标记CSLA的排名最高的问题的第二个答案提到:"它的缺点在于它有一点学习曲线."

ado.net dataset strongly-typed-dataset winforms

6
推荐指数
1
解决办法
1519
查看次数

在MSAccess中重命名列的DDL是什么?

在MS Access中重命名列的DDL是什么?有点像:

alter table myTable rename col1 to col2

这对MSAccess 2000格式数据库不起作用.我正在使用带有MSAccess 2000格式数据库的OLEDB或ADO.NET,但感谢任何语法提示或建议如何使用ADO.NET以其他方式实现此目的.

ddl ms-access

6
推荐指数
3
解决办法
1万
查看次数

Access的查询编辑器如何决定是否放弃我的格式?

像许多熟悉SQL语法的开发人员一样,在使用Access的查询编辑器时我感到很沮丧.我明白是在谈论原始的SQL语法视图.

它的许多烦人的特性之一是,在保存它将丢弃我的布局/格式.重新打开查询时,我看到的是一堆未格式化的SQL.

但是,如果我的语法很长和/或足够复杂,我注意到Access 保留我的格式和布局,哦,快乐,查询仍然清晰可读.我现在正在看一个示例,其中包含一个SQL页面,其中包含UNIONs几天前完美布局的几个.

Access在什么时候翻转以允许用户保留自己的格式?它长吗?复杂?是否有可能甚至是一个微不足道的结构编辑(如果琐碎的结构不是矛盾的)我可以对我的所有查询做出这将迫使Access留下我的布局?

sql ms-access ms-access-2007 ms-access-2003

6
推荐指数
1
解决办法
1799
查看次数

指定连接字符串时 <clear /> 表示什么?

这个对另一个问题的回答指出:


不要忘记首先清除连接字符串:

<connectionStrings>
   <clear />
   <add name="LocalSqlServer" connectionString="Data Source=(local);Initial Catalog=aspnetdb;Integrated Security=True" providerName="System.Data.SqlClient"/> 
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

... 有趣的。那有什么作用?

asp.net connection-string

6
推荐指数
1
解决办法
5974
查看次数