小编Eig*_*ite的帖子

WPF - Animate ListBox.ScrollViewer.Horizo​​ntalOffset?

我有一个Visuals 的集合ListBox.我需要找到XPosition里面的一个元素,然后动画HorizontalOffset中的ListBoxScrollViewer.基本上我想创建一个动画ScrollIntoView方法.

这给了我一些问题.首先,我如何获得对ListBoxs scrollviewer 的引用?其次,我怎样才能获得相对XPositionHozintalOfffset任意元素ListBox

我并没有对ListBox自身的任何输入做出反应,因此我无法使用Mouse相关属性.

wpf animation listbox scrollviewer horizontaloffset

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

SQL Server - 参数名称中的字符无效

我需要知道在SQL参数名称中使用的有效字符是什么.

给定一些简单的东西,例如SELECT * FROM tblTest WHERE testid = @[X],如果X包含连字符,则语句将失败.参数名称的有效字符是什么?

sql sql-server parameters

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

SQL Server 2005数据库'恢复'

我昨天在我的开发机器上恢复了一个35Gb的数据库,直到今天早上我的客户端应用程序无法连接时一切正常.所以我打开SQL Management Studio来查找数据库'In Recovery'.

除了它通常与未提交的事务有关之外,我不知道有很多这方面的事情.现在,因为我知道没有任何未提交的交易,它必须是别的东西.首先,我想知道在什么条件下会发生这种情况.其次,虽然这种情况正在发生,但我无法工作,所以如果有任何方法可以阻止恢复,加快速度,或者至少找到大约会有多长时间,这将有所帮助.

sql sql-server recovery

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

从WPF迁移到Silverlight时的主要摩擦点是什么?如何填补功能空白?

好的,为了给一点背景知识,我在大约3年前学习了WPF,并且在各种不同的版本中保持了最新的结果.我在几个项目中查看(并实现了)MVVM,仔细研究了像Prism这样的框架,所以我觉得我对框架的大部分领域非常精通.我还简要介绍了几个小型的Silverlight 2.0项目.

我的问题是,我即将在一家新公司开始Silverlight工作,虽然我很自在能够很好地完成工作,但我觉得我的WPF知识可能会给我带来一些问题.我已经阅读了关于Codeplex 的WPF/Silverlight指南白皮书,这篇文章非常出色并且非常有用,但它突出了差异,但仍然让我想知道如何解决这些差异.

例如,我知道DataTriggers它们MultiBindings和其他一些东西都缺失了.我有兴趣阅读的不是本身的差异,而是你如何得到这些差异或其他模式在Silverlight中有用.如果我需要一个DataTrigger怎么办?显然我的设计应该考虑到这些因素.

所以,问题是,如果你经历了这种转变,那么哪些差异会给你造成最大的麻烦,你是如何解决这个问题的?

silverlight wpf design-patterns

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

使用Ninject 2.0注入相同类型的多个构造函数参数

我正在使用Ninject 2.0在我的一个应用程序中处理DI,而且我遇到了令我困惑的事情.说实话,零文档并没有太大帮助.

假设我有一个带签名的构造函数 -

ctor(IServiceFactory factory1, IServiceFactory factory2)
{
    this.factory1 = factory1;
    this.factory2 = factory2;
}
Run Code Online (Sandbox Code Playgroud)

虽然这两个服务实现了相同的接口,但它们是完全不同的实现,并且在不同的时间使用,因此我不想注入IEnumerable<IServiceFactory>.

我的问题是,当我绑定实例时,如何告诉Ninject每个注入的内容?

提前致谢.

更新

为了让任何想要看到代码的人在阅读雷莫的链接后结束,...这里简单介绍一下.(我从未意识到C#有参数属性!)

//abstract factory
public interface IServiceFactory
{
    Service Create();
}

//concrete factories
public class Service1Factory : IServiceFactory
{
    public IService Create()
    {
        return new Service1();
    }
}

public class Service2Factory : IServiceFactory
{
    public IService Create()
    {
        return new Service2();
    }
}

//Binding Module (in composition root)
public class ServiceFactoryModule : NinjectModule
{
    public override void Load()
    { …
Run Code Online (Sandbox Code Playgroud)

dependency-injection inversion-of-control ninject-2

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

为什么我从Exceptions创建的堆栈跟踪中没有获得行号?

好的; 假设此代码在调试模式下运行 -

static StackFrame GetTopFrameWithLineNumber(Exception e)
{
    StackTrace trace = new StackTrace(e);
    foreach (StackFrame frame in trace.GetFrames())
    {
        if (frame.GetFileLineNumber() != 0)
        {
            return frame;
        }
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

我总是返回null.为什么我检查Exception.StackTrace字符串时堆栈帧没有行号,它显然有任何非框架代码?从我不知道的异常构造堆栈跟踪是否存在问题?

编辑CLARITY: 在抛出的异常中,我可以看到StackTrace属性中的行号.我假设这意味着我拥有我需要的一切.

.net debugging stack-trace line-numbers

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

WPF列表框和键盘导航

我有一个数据绑定ListBox与ItemTemplate我想要启用键盘导航.

如果我没有使用项目模板并且只使用了DisplayMemberPath,则列表可以使用keybaord进行导航.例如,按"G"将所选项目设置为以G开头的第一个列表项目.使用项目模板显然会使其更加困难,因为模板中有这样的导航的零个或多个文本候选项.

我的问题是如何将元素标记为导航源或使用其他方法模拟此效果?

keyboard wpf listbox

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

C#.NET有一个类似于我的分配助手类吗?

我已经实现了以下类:

public class ClassAllocator<T>
    where T : new()
{
    public delegate T Allocator();
    T obj;
    Allocator allocator = () => new T();

    public ClassAllocator( T obj )
    {
        this.obj = obj;
    }

    public ClassAllocator( T obj, Allocator allocator )
    {
        this.obj = obj;
        this.allocator = allocator;
    }

    public T Instance
    {
        get
        {
            if( obj == null )
            {
                obj = allocator();
            }

            return obj;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我觉得这个简单而有用的东西应该在.NET的某个地方.而且,我意识到我所做的课程有点不正确.该类设计用于处理没有默认构造函数的对象,但我的'where'子句在所有情况下都需要它.

让我知道如果.NET中有什么东西我可以使用,所以我可以摆脱这个类,因为我不想继续使用重新发明的轮.

谢谢!!!!

更新:

我正在使用.NET 3.5.对不起,我之前没有提到过这个问题,直到几个好的答案开始流入,我才意识到它是相关的:)

.net c#

6
推荐指数
2
解决办法
177
查看次数

WPF EventTriggers - 无法将属性"RoutedEvent"中的字符串"MouseEnter"转换为"System.Windows.RoutedEvent"类型的对象

我无法让任何事件触发器工作.我正在做的一个简化示例如下 -

<Window x:Name="win" x:Class="EventTriggers.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Window.Resources>
    <ControlTemplate x:Key="buttonT">
        <Border Background="#333">
            <TextBlock Text="{Binding}" HorizontalAlignment="Stretch" Foreground="White"/>
            <Border.Triggers>
                <EventTrigger RoutedEvent="MouseEnter">

                </EventTrigger>
            </Border.Triggers>
        </Border>
    </ControlTemplate>

    <DataTemplate x:Key="lbt">
        <Button Template="{StaticResource buttonT}" Click="Button_Click"></Button>
    </DataTemplate>

</Window.Resources>
<ListBox ItemsSource="{Binding ElementName=win,Path=col}" ItemTemplate="{StaticResource lbt}">
</ListBox>
Run Code Online (Sandbox Code Playgroud)

我知道有一个MouseEnter关于边界的事件,因为它被定义,UIElement但我仍然得到

无法将属性"RoutedEvent"中的字符串"MouseEnter"转换为"System.Windows.RoutedEvent"类型的对象

一旦我运行该应用程序.

任何帮助将非常感激.

wpf eventtrigger

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

编写伪代码 - 最佳实践?

我不想邀请Pseudocode在这里是否有用的论点,...有很多与此相关的问题.我觉得写伪代码有时很有用,但有一件事一直在发生,我表达的最好方法是什么?

有时我最终会使用编号方法,有时我会使用C风格的语法,但大部分时间它都是我认为当时最好的混合.这很好,但在6个月后,当我再来看一遍时,并不总是那么清楚意图是什么!为了打击我最近开始将页面分成两部分而在右半部分,我会写pidgin [在这里插入语言],在左边我会写出非常明显和冗长的英文.

我不认为没有任何"标准"来编写伪代码,但我很想知道其他人是如何做到的,也许这将帮助我决定采用统一的方法.

提前致谢.

哦,我知道这个问题是主观的,如果这不是SO的预期目的,我很抱歉,但它仍然是一个有效的问题.事实上,计算中真的有很多问题只有一个正确的答案吗?我将把最有用的答案标记为正确.

pseudocode

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