小编Jul*_*ain的帖子

带有TextBlock的WPF DataGridCell模板 - 绑定?

我更换ContentPresenterDataGridCellTemplateTextBlock的,现在我搜索正确Binding的内容.

正常的方法是Text="{TemplateBinding Content}TextBlock-这是行不通的.也Text="{Binding RelativeSource={RelativeSource TemplatedParent},Path=Content, Mode=TwoWay}"行不通.

还有其他想法吗?

wpf replace textblock contentpresenter datagridcell

4
推荐指数
1
解决办法
8754
查看次数

有没有办法在VB.NET中清除订阅事件?

在C#中,我习惯于清除对自定义事件的每个订阅,Dispose()以避免订阅者忘记取消订阅我的事件而导致内存泄漏.

这很简单,只需通过调用,MyEvent = null因为C#编译器会自动生成一个委托字段.不幸的是,在VB.NET中,似乎没有简单的方法可以做到这一点.我提出的唯一解决方案是编写一个Custom Event,添加自定义添加和删除处理程序调用Delegate.Combine/ Delegate.Remove,基本上是C#编译器的功能.但是为了能够清除订阅而必须为每个事件执行此操作似乎对我来说有点"过分".

有没有人有另一个想法来解决这个问题?谢谢.

vb.net events subscription

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

如何"减少"哈希?

假设我有任何"长"哈希,如16字节MD5或20字节SHA1.为了达到GetHashCode()目的,我想减少这个哈希以适应4个字节.

首先,我完全清楚我会发生更多碰撞.在我的情况下,这完全没问题,但我仍然希望减少碰撞的可能性.

我的问题有几种解决方案:

  • 我可以取哈希的4个第一个字节.
  • 我可以取哈希的最后4个字节.
  • 我可以采用4个随机字节的哈希值.
  • 我可以生成散列的散列,涉及经典的素数乘法.

还有其他我没想过的解决方案吗?更重要的是,什么方法会给我最独特的哈希码?我现在假设它们几乎相同.

Microsoft选择组件的公钥令牌是其公钥的SHA1哈希的最后8个字节,所以我可能会选择这个解决方案,但我想知道原因.

.net hashcode

3
推荐指数
2
解决办法
438
查看次数

如何使用Wix运行sql脚本来创建数据库

我遇到了使用Wix创建数据库的问题.我可以找到的示例(请参阅下面的链接)首先使用wix创建数据库并运行create table sql脚本.问题是我需要设置wix以使用CREATE DATABASE运行sql脚本来创建数据库和表,而不是首先使用.wxs文件中的SqlDatabase标记创建数据库.这可能在Wix中这样做吗?我正在使用SQL Server Express.有关如何执行此操作的任何示例都会有所帮助.

http://www.rrreese.com/Article/Show/WiX%20SQL

sql脚本示例:

CREATE DATABASE My_DB
CREATE TABLE Test (Value1 CHAR(50), Value2 INTEGER)
CREATE INDEX TestIndex ON Test (Value1)
Run Code Online (Sandbox Code Playgroud)

提前致谢.任何帮助深表感谢.

database wix

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

C#如何使用RightClick选择ListBox项?

我已经为此尝试了很多方法并完成了数小时的研究,但它似乎永远不会对我有用.

这是我目前的代码,我不知道它为什么不起作用.

    private void listBox1_MouseDown(object sender, MouseEventArgs e)
    {
        listBox1.SelectedIndex = listBox1.IndexFromPoint(e.X, e.Y);
        if (e.Button == MouseButtons.Right)
        {
            contextMenuStrip1.Show();
        }
    }
Run Code Online (Sandbox Code Playgroud)

此外,我不关心可以删除的上下文菜单我只是想找到一种方法来鼠标右键选择我点击的项目.

有任何想法吗?

c# listbox selection winforms

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

进度条值与在Windows 7中呈现的内容不同步

似乎在Windows 7中,在设置进度条的值时会发生一些动画.设置值似乎不等待动画完成.有没有办法通知进度条何时完成动画?

我有一个示例程序.请参阅评论.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Threading;

namespace Testing
{
   static class Program
   {
      [STAThread]
      static void Main()
      {
         Application.EnableVisualStyles();
         Application.SetCompatibleTextRenderingDefault(false);
         var form = new Form1();
         form.Run();
      }
   }

   public partial class Form1 : Form
   {
      public Form1()
      {
         InitializeComponent();
      }

      public void Run()
      {
         Thread thread = new Thread
         (
            delegate()
            {
               ProgressBarMax = 10;
               ProgressValue = 0;

               for (int i = 0; i < 10; i++)
               {
                  Thread.Sleep(1000);
                  ProgressValue++;
               }
            }
         ); …
Run Code Online (Sandbox Code Playgroud)

c# winforms progress-bar

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

将 XAML 中的 ImageSource 设置为 PackIcon Kind?

我正在尝试组合一个功能区控件,我喜欢使用 MaterialDesign WPF Toolkit 的 IconPack 中的图标。有没有办法可以访问图标图像本身?

例如:使用网格图标,代码为<materialDesign:PackIcon Kind="Grid" />

如何将该图标分配给 ImageSource?

c# wpf xaml material-design-in-xaml

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

当使用以下方式时,"使用"的用途是什么

当使用以下方式时,"使用"的目的是什么:

一个例子就是这个,(一个答案 - @richj - 使用这个代码来解决一个问题)

private Method(SqlConnection connection)
{
    using (SqlTransaction transaction = connection.BeginTransaction())
    {
        try
        {
            // Use the connection here
            ....

            transaction.Commit();
        } 
        catch
        {
            transaction.Rollback();
            throw;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

其他示例我在MICROSOFT支持网站上阅读时发现

public static void ShowSqlException(string connectionString)
{
    string queryString = "EXECUTE NonExistantStoredProcedure";
    StringBuilder errorMessages = new StringBuilder();

    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        SqlCommand command = new SqlCommand(queryString, connection);
        try
        {
            command.Connection.Open();
            command.ExecuteNonQuery();
        }
        catch (SqlException ex)
        {
            for (int i = 0; i < ex.Errors.Count; …
Run Code Online (Sandbox Code Playgroud)

c# sql connection using-directives

0
推荐指数
3
解决办法
266
查看次数

试图从类中返回一个集合

我在下面有以下类,我想返回特定状态的所有USLocation类:

var usLocations = (from s in GetUSStates() where s.Code == stateCode select s.Locations);
Run Code Online (Sandbox Code Playgroud)

但我一直收到错误:

无法将类型'System.Collections.Generic.IEnumerable <System.Collections.Generic.IEnumerable <A.Model.USLocation >>'隐式转换为'System.Collections.Generic.List <A.Model.USLocation>'.存在显式转换(您是否错过了演员?)

看起来像"选择s.Locations正在回收集合中的集合.我在这里做错了什么?

public class USState
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Code { get; set; }
    public IEnumerable<USLocation> Locations { get; set; } 
    public override string ToString()
    {
        return string.Format("{0}:{1} ({2})", Name, Code, Id);
    }
}

public class USLocation
{
    public int Id { get; set; }
    public string Name …
Run Code Online (Sandbox Code Playgroud)

c# linq

0
推荐指数
1
解决办法
73
查看次数