问题列表 - 第38945页

父改变事件的WPF UserControl

我有一个应用程序,我有一个主窗口,可以包含其他停靠/附加的窗口.现在,当我的用户控件加载时,我使用Window.GetWindow获取其父级.这将返回对主窗口的引用,这很好.但是,当我取消/拆除用户控件所在的子窗口时,父窗口将更改.

用户控件需要监听许多父窗口事件.当父进行更改时,我找不到任何通知用户控件的方法.看起来System.Windows.Controls.UserControl不存在ParentChanged/OnParentChanged.

有什么方法可以在其父级更改时通知我的用户控件?

谢谢.

wpf wpf-controls

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

Model Binder可以进行存储库查找吗?

我正在构建一个MVC应用程序,并正在为一个类设计一个自定义模型绑定器; 本质上,模型的一个字段是存在于数据库中的对象,但很难将其与HTML中的相应对象相关联.(因为选择列表只允许我选择一个int/string字段,我真的不能将'object'存储为Select List的'value').

我正在考虑使用存储在选择列表中的Id来查找我的Model Binder中的数据库中的对象 - 但是我的一位同事告诉我这通常是一个坏主意.这是真的,如果是的话,我还有其他选择吗?

asp.net-mvc modelbinders

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

c#引用分配未按预期工作

所以我写了一个简单的计时器类

public class ConsoleTimer : IDisposable
{
    private Stopwatch _watch;
    private IList _items;
    public object Count = "0";

    public ConsoleTimer(IList items) {
        _watch = new Stopwatch();
        _items = items;
        _watch.Start();
    }


    public void Dispose() {
        var c = Console.ForegroundColor;
        Console.ForegroundColor = ConsoleColor.Green;
        _watch.Stop();
        TimeSpan ts = _watch.Elapsed;
        Console.WriteLine(String.Format("{0} items in {1}m {2}s", _items != null ? _items.Count : Count, ts.Minutes, ts.Seconds));
        Console.ForegroundColor = c;
    }
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我接受可选的构造函数参数(IList),以便在我的计时器范围过程中该列表发生更改时,我可以自动写出添加了多少项(行/记录/实体等).

使用如下:

        using (ConsoleTimer t = new ConsoleTimer(_values)) {
            _values = GetValues(filter);
        }
Run Code Online (Sandbox Code Playgroud)

即使_values有955项,我的计时器的Dispose方法仍然将_items看作构造函数中传递的值(无论是0还是null) …

.net c# oop inheritance

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

如何隐藏导航栏的uibarbutton项目

我在后台线程解压缩文件,我在主线程上调用HomeViewController.在这个视图控制器中,我在UINavigationBar上有一个UIBarButtonItem.如果我单击此按钮,它将转到StoryViewController,并在那里使用解压缩的数据.所以我想显示主页视图控制器,虽然解压缩过程没有完成,因为我必须隐藏导航栏上的按钮,当在后台线程上解压缩时,再次完成上拉后我必须显示按钮导航栏.我正在调用homeViewController的方法来隐藏和显示..我必须在那些方法中写什么...?我的意思是如何在UINavigationBar上隐藏和显示uiBarButtonItem ....

谢谢....

iphone uinavigationbar show-hide uibarbuttonitem

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

使用OPENQUERY执行存储过程

我有SQL Server 2008与链接的Sybase服务器,我试图使用OPENQUERY在Sybase服务器上执行存储过程.如果我有一个不带参数的存储过程,它就会成功.如果我有一个带参数的存储过程则失败.我甚至尝试过一个非常基本的存储过程,只接受一个仍然失败的int.以下是我使用的语法:

select * from 
OPENQUERY([LINKSERVER],'exec database.user.my_stored_proc ''AT'',''XXXX%'',''1111'',1')
Run Code Online (Sandbox Code Playgroud)

消息7357,级别16,状态2,行3无法处理对象"exec database.user.my_stored_proc'AT','XXXX%','1111',1".链接服务器"LINKSERVER"的OLE DB提供程序"ASEOLEDB"表示该对象没有列,或者当前用户没有该对象的权限.

由于proc将在没有参数的情况下执行得很好,我认为这不是一个权限问题.

sql t-sql sql-server sybase openquery

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

std :: bind重载决议

以下代码工作正常

#include <functional>

using namespace std;
using namespace std::placeholders;

class A
{
  int operator()( int i, int j ) { return i - j; }
};

A a;
auto aBind = bind( &A::operator(), ref(a), _2, _1 );
Run Code Online (Sandbox Code Playgroud)

事实并非如此

#include <functional>

using namespace std;
using namespace std::placeholders;

class A
{
  int operator()( int i, int j ) { return i - j; }
  int operator()( int i ) { return -i; }
};

A a;
auto aBind = bind( &A::operator(), ref(a), …
Run Code Online (Sandbox Code Playgroud)

c++ functional-programming std c++11

24
推荐指数
2
解决办法
7499
查看次数

MessageBox不会在Windows 7 Embedded中显示

考虑一个MessageBox来提示用户回答是或否.它适用于我们的XP机器和一台Windows 7构建机器.

但是,它不适用于我们的Windows 7 Embedded机器.没有错误消息,没有MessageBox显示.它只是假设用户单击了Yes按钮,因为我可以找到从那里创建的调试文件,并且createDatabase();在没有任何messageBox之前调用它.

我可以找到MessageBox所需的程序集(System.Windows.Forms.dll).它与我们的Windows 7构建机器位于同一位置.你知道为什么吗?谢谢

DialogResult result = System.Windows.Forms.MessageBox.Show(
    "Do you want to update your database?\nWarning: All your data will be erased if you click Yes !",
"Update Database",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question);

if (result == DialogResult.Yes)
{
    string[] cmdLines2 = { @"C:\AndeDB\AndeDB.db is here and selected yes" };
    //it will create, open and write or overwrite
    File.WriteAllLines(@"C:\Temp\dbcheck2.txt", cmdLines2);
    createDatabase();
}
Run Code Online (Sandbox Code Playgroud)

.net c# windows-embedded windows-7-embedded

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

我怎样才能创建自己的例外?

这是我的代码的骨架:

if(CheckForSomething())
{
    try
    {
        //do something
    }
    catch (UnauthorizedAccessException ex)
    {
        LogException(ex, item.server);
    }
    catch (Exception ex)
    {
        LogException(ex, item.server);
    }
}
else
{
    string error = "Some error";
    //want to call LogException with error as argument
}

private static void LogException(Exception ex)
{
    //write ex to one log file
    // write ex.message to another log file
}
Run Code Online (Sandbox Code Playgroud)

如何从else块调用LogException方法?我尝试将字符串转换为异常并创建异常.

c# exception-handling

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

我可以从父页面验证iFrame页面吗?

我有一个简单的HTML页面,可以旋转几个状态页面,我在校园周围的几个电视上显示.我定期更新页面和链接.很多时候页面需要身份验证.远程终端提供凭证是一种痛苦.一些是HTTP身份验证,一些是<form>基于身份验证的网站.很多时候,我可以通过<form>发布正确凭据的HTML和JavaScript来解决基于身份验证的问题.

  1. 有没有更好的方法来<form>从主机页面绕过基于身份验证?(下面)

  2. 有没有办法从主机页面绕过基于服务器/ HTTP的身份验证,而无需在显示器上手动进行身份验证?

通过<form>身份验证我的意思是一个<form>动作生成一个会话cookie?
(mikerobi,感谢评论)

这是主页的代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title> 
  Important Stuff 
</title>
    <script src="/scripts/jquery.js" type="text/javascript"></script>
    <style type="text/css">
        html, body, iframe { margin:0; height:100%; }
        iframe { display:block; width:100%; border:none; }
    </style>
    <script type="text/javascript">
        var link = new Array();        
        link[0] = "http://mycompany.intranet/";        
        link[1] = "http://mycompany.intranet/weather.htm";        
        link[2] = "http://mycompany.intranet/systemstatus/";        
        var linkIndex = 0;
        setInterval("doSomething()", 10000);

        function doSomething() {

            if (linkIndex >= …
Run Code Online (Sandbox Code Playgroud)

html javascript authentication iframe

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

压缩Java中的字节数组并在C中解压缩

我目前在Java程序中有以下数组,

byte[] data = new byte[800];
Run Code Online (Sandbox Code Playgroud)

我想在通过串口(115200 Baud)将其发送到微控制器之前对其进行压缩.我想在C中用微控制器解压缩数组.但是,我不太确定最好的方法是什么.性能是一个问题,因为微控制器只是一个arduino所以它不能太存储器/ CPU密集型.数据或多或少是随机的(编辑我猜它不是那么随机,请看下面的编辑)我会说因为它代表每16位的rgb颜色值.

压缩这些数据的最佳方法是什么?知道我可以得到多少压缩?

编辑

对于缺乏信息感到抱歉.我需要压缩无损,我只打算一次发送800个字节.我的问题是800字节不能以我正在使用的115200波特率快速传输.我希望我能缩小一点尺寸以提高速度.

每两个字节看起来像:

0RRRRRGGGGGBBBBB

其中RG和B位分别代表红色,绿色和蓝色的颜色通道的值.然后,每两个字节就是20x20网格上的单个LED.我会想象很多两个字节都是相同的,因为我经常为多个LED分配相同的颜色代码.也可能是这样的情况,RGB值通常> 15,因为我通常使用明亮的颜色(但是,这可能是一个没有实际意义的点,因为它们通常不是一次全部> 15).

c java compression embedded

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