小编DIF*_*DIF的帖子

c#Hashtable按键排序

我有一个哈希表,其中键是字母键,值是数字键.如何根据键对哈希表进行排序?

ExchangeA, 200
ExchangeV, 100
ExchangeC, 200
Run Code Online (Sandbox Code Playgroud)

就像这样

ExchangeA, 200
ExchangeC, 200
ExchangeV, 100
Run Code Online (Sandbox Code Playgroud)

c# sorting hashtable jquery-ui-sortable

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

如何在WinRt应用程序中将WriteableBitmap图像转换为Byte数组

我想在Windows商店都市风格的应用程序中使用C#代码将WriteableBitmap图像转换为Byte[]数组.

c# image-processing windows-runtime

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

使用客户端凭据通过SSL进行HttpWebRequest

我正在尝试使用HttpWebRequest来获取需要用户名和密码的https URI.如果我将URI放入浏览器,它会弹出一个对话框,询问凭据然后工作.使用HttpWebRequest给我一个401 Unauthorized错误.

NetworkCredentials的文档说它不支持SSL,但我找不到我应该使用的内容.

.net ssl credentials httpwebrequest

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

单元测试的好方法是使用另一个经过测试的功能来为实际测试做准备吗?

我正在尝试使用NUnit进行单元测试.目前,我正在编写一个简单的测试来熟悉语法和单元测试的方法.但我不确定我是否通过以下测试做得对:

被测试的类包含一个包含水果名称的字符串列表,其中可以添加新的水果名称class_under_test.addNewFruit(...).因此,为了测试其功能addNewFruit(...),我首先使用该方法将新字符串添加到列表中(例如"Pinapple"),然后在下一步中验证列表是否包含此新字符串.

我不确定这是否是测试方法功能的好方法,因为我依赖于另一个函数的响应(我已经在之前的单元测试中测试过).

这是测试此功能的方法,还是有更好的解决方案?

public void addNewFruit_validNewFruitName_ReturnsFalse()
{
    //arrange
    string newFruit = "Pineapple";

    //act
    class_under_test.addNewFruit(newFruit);
    bool result = class_under_test.isInFruitList(newFruit);

    //assert
    Assert.That(!result);
}
Run Code Online (Sandbox Code Playgroud)

c# nunit unit-testing

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

在C#中释放COM对象

我知道这已经讨论过了,但我找不到满意的答案.

我有一个电子邮件文件(.msg),我打开如下,然后调用显示.

oApp = new Microsoft.Office.Interop.Outlook.Application();
mail = (Microsoft.Office.Interop.Outlook.MailItem)oApp.Session.OpenSharedItem(fileName);
mail.Display(false);
oApp = null; // do I need to release this object ?
Run Code Online (Sandbox Code Playgroud)

用户可以关闭它并重新打开它.在他们点击"重新打开"之前,我检查窗口是否仍然存在,如果是,那么只需将SetForeground(hwnd)发送到该窗口.如果不是,这意味着用户关闭它,所以只需释放mailItem对象并再次打开.

 public static void ReleaseCOMObject(Microsoft.Office.Interop.Outlook.MailItem item) {
        int r = System.Runtime.InteropServices.Marshal.ReleaseComObject(item);
        while (r != 0) {
            r = System.Runtime.InteropServices.Marshal.ReleaseComObject(item);
        }
    }
Run Code Online (Sandbox Code Playgroud)

如果我再次尝试打开同一个文件.它"有时"会抛出"正在使用的文件异常"所以,我认为即使我发布了MailItem,它也没有被正确发布.

我该怎么做才能确保其正确发布.关闭和重新打开文件是一种非常常见的情况.

任何指针都会非常有用.

c# com outlook

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

窗口前的消防功能会在方向更改时调整内容大小?

所以我一直在建立自己的移动网络应用程序,并试图隐藏用户旋转手机后的布局重新洗牌(我有一个肖像和由js设置的横向布局).

我原本以为我应该能够设置$('body').display = "none";调整大小的时间,并在大约一秒左右后将身体褪去,但是在display = "none"踢球之前仍然会发生洗牌.

有没有办法在页面旋转后立即触发功能,以便隐藏重新洗牌元素?我也尝试了onorientationchange监听器,但它们似乎在事件发生后直接触发.

javascript mobile html5 resize orientation

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

如何从小部件启动在不同包中定义的活动?

我有一个带有可点击的Imageview的小部件.当我点击小部件时,我希望它启动一个不同包中的活动.但我没有收到任何错误,也没有发生点击事件.我在下面给出我的代码.

Intent start = new Intent(context, com.abc.xyz.Start.class);//com.abc.xyz->other package        
PendingIntent pendingIntent = PendingIntent.getActivity(
        context, 0, start, 0);          
RemoteViews views = new RemoteViews(context.getPackageName(),
        R.layout.widget_main);
views.setOnClickPendingIntent(R.id.clickable_image_widget, pendingIntent);
appWidgetManager.updateAppWidget(appWidgetIds, views);
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

android android-widget

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

CWinAppEx CleanState - 重置布局

我迁移了我的MFC MDI应用程序以使用新的MFC功能包.我有很多工具栏和可停靠的窗格.据我所知,关闭应用程序时,每个位置和大小都保存在注册表中,并在加载主框架时加载.

我想在我的应用程序中添加一个功能,将工具栏/窗格的布局重置为原始布局.

我添加了一个菜单项,其命令在我的CWinAppEx派生类中处理,如下所示:

CleanState();
LoadState((CMDIFrameWndEx*)m_pMainWnd);
Run Code Online (Sandbox Code Playgroud)

但它似乎没有正常工作.

但是,如果我在CleanState()调用之前调用函数调用LoadMainFrame(),应用程序将使用默认布局(我想要的那个)加载.

有没有办法在加载后重新设置应用程序的布局?

非常感谢.

registry layout mfc toolbar

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

绑定到XAML中派生类中定义的依赖项属性

我有一个从Window派生的简单视图.在该派生类的代码隐藏文件中,我定义了一个名为ActiveDocument的新DependencyProperty.

我希望将这个新的DependencyProperty绑定到ViewModel上的一个属性,该属性被设置为视图的DataContext.

我可以使用类构造函数中的代码设置此绑定,但是尝试绑定XAML文件中的属性会导致出现错误消息,指出无法在类Window上找到属性ActiveDocument.

在XAML中执行此操作的正确语法是什么?

[使用代码更新]

MainWindowViewModel.cs

class MainWindowViewModel
{
    public bool IWantBool { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

MainWindow.xaml.cs

public partial class MainWindow : Window
{
    public MainWindow()
    {
        DataContext = new MainWindowViewModel();
        InitializeComponent();
    }

    public static readonly DependencyProperty BoolProperty = DependencyProperty.Register(
        "BoolProperty", typeof(bool), typeof(MainWindow));
}
Run Code Online (Sandbox Code Playgroud)

Mainwindow.xaml

<Window x:Class="DependencyPropertyTest.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:DependencyPropertyTest"

    <!-- ERROR: BoolProperty not found on type Window. -->
    BoolProperty="{Binding path=IWantBool}"

    <!-- ERROR: Attachable property not found in type MainWindow. -->
    local:MainWindow.BoolProperty="{Binding path=IWantBool}">

    <Grid>

    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml

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

如何绘制多边形?(在C#WPF项目中)

点击我想从图像上的多边形区域制作的点.

myPolygon = new Polygon();
myPolygon.Stroke = Brushes.Black; 
myPolygon.Fill = Brushes.LightYellow; 
myPolygon.StrokeThickness = 2; 
myPolygon.HorizontalAlignment = HorizontalAlignment.Left; 
myPolygon.VerticalAlignment = VerticalAlignment.Center; 
myPolygon.PreviewMouseLeftButtonDown += new MouseButtonEventHandler(Polygon_MouseDown); 
myPolygon.PreviewMouseLeftButtonUp += new MouseButtonEventHandler(Polygon_MouseUp);     

private void Polygon_MouseDown(object sender, MouseButtonEventArgs e) 
{     
    Point p = e.GetPosition(image); 
    myPolygon.Points = new PointCollection() { new Point(p.X,p.Y) };
    RootCanvas.Children.Add(myPolygon); 
} //MouseClick Event BUT, did not click behavior.. I want draw a line along the points.
Run Code Online (Sandbox Code Playgroud)

我能怎么做...?

c# wpf polygon polyline

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