目的是在窗体失去焦点时触发不透明度事件.表单有一个STAY ON TOP的设置.视觉效果是点击一个可能重叠的窗口,然而未聚焦的形式将保持在顶部,但在角落稍微透明,使其易于访问,但提供对下面的东西的可见性.
我用Google搜索并用谷歌搜索,并且无法弄清楚当表格失去焦点时如何让这个事件正确点火,然后当表格获得焦点时,将不透明度恢复到100%或其他地方确定的等级.
提示?
// under designer.cs
//
// CollectionToolForm
//
//other code....
this.LostFocus += new System.EventHandler(goTransparent);
//method
private void goTransparent(object sender, EventArgs e)
{
if (transparentCheck.Checked == true)
{
this.Opacity = 0.50;
}
else
{
this.Opacity = 1;
}
}
Run Code Online (Sandbox Code Playgroud) 我试图在一个元素上捕获鼠标事件,并在其上面放置另一个绝对定位的元素.
现在,绝对定位元素上的事件击中它并冒泡到它的父级,但我希望它对这些鼠标事件"透明"并将它们转发给它背后的任何东西.我该如何实现呢?
例如,如果我有以下内容:
void foo(string* s)
{
bar(s); // this line fails to compile, invalid init. error
}
void bar(const string& cs)
{
// stuff happens here
}
Run Code Online (Sandbox Code Playgroud)
我需要进行哪些转换才能让电话成功?
希望使客户端通过WCF将序列化的Message对象发送回服务器.
为了让最终开发人员(不同部门)更容易,他们不需要知道如何编辑他们的配置文件来设置客户端端点数据.
也就是说,端点也没有嵌入/硬编码到客户端也很棒.
在我看来,混合方案是推出的最简单的解决方案:
IF(在config中描述)USE配置文件ELSE回退到硬编码端点.
我发现的是:
new Client(); 如果找不到配置文件定义,则会失败new Client(binding,endpoint); 作品因此:
Client client;
try {
client = new Client();
}catch {
//Guess not defined in config file...
//fall back to hard coded solution:
client(binding, endpoint)
}
Run Code Online (Sandbox Code Playgroud)
但有没有办法检查(除了try/catch)以查看配置文件是否有一个端点声明?
如果在配置文件中定义,但上述配置是否也会失败,但配置不正确?区分这两个条件会好吗?
重复:在C#中,如何在不丢失堆栈跟踪的情况下重新抛出InnerException?
我有一些操作,我在后台线程上异步调用.有时,事情变坏了.当发生这种情况时,我倾向于得到一个TargetInvocationException,这在适当的时候是没用的.我真正需要的是TargetInvocationException的InnerException,如下所示:
try
{
ReturnValue = myFunctionCall.Invoke(Target, Parameters);
}
catch (TargetInvocationException err)
{
throw err.InnerException;
}
Run Code Online (Sandbox Code Playgroud)
这样,我的调用者就会发生真正的异常.问题是,throw语句似乎重置了堆栈跟踪.我想基本上重新抛出内部异常,但保留它最初的堆栈跟踪.我怎么做?
澄清: 我只想要内部异常的原因是这个类试图"抽象"这些函数(由调用者提供的委托)在其他线程上运行的事实.如果存在异常,则可能与在后台线程上运行无关,并且调用者真的希望堆栈跟踪进入其委托并找到真正的问题,而不是我调用的调用.
有没有办法确定文档中哪个元素当前具有焦点?理想情况下,无需走过任何元素.
有人知道C#,C/C++或Objective-C的眼动追踪库吗?开源是首选.谢谢.
有没有人知道使用LINQ to SQL 做类似Django的signals方法?
我正在尝试记录何时插入新行以及更新某些列时,所以我真的只想要pre_save并post_save发出信号.
我可以通过使用定义为OnFooIDChanging()和OnFooIDChanged()(其中FooID是主键)的部分来对某些模型执行此操作,但这对于主键不是标识或由代码设置的模型不起作用.
对于那些,我可以使用OnValidate(),但这只会是pre_save,并且它使得处理数据库变得困难,因为OnValidate()调用来自DBContext.SubmitChanges(),当然不允许SubmitChanges()从内部调用第二个,使得post_save基本上不可能,就我而言可以看到.
Google App Engine上的应用程序必须具有在30秒内返回响应数据的Web请求.超过此时间时,将DeadlineExceededException引发异常:
/time.jsp
java.lang.ClassCastException: com.google.apphosting.api.DeadlineExceededException cannot be cast to javax.servlet.ServletException
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:754)
at org.apache.jsp.time_jsp._jspService(time_jsp.java:66)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:237)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:125)
at com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:235)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:4755)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:4753)
at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:359)
at com.google.net.rpc.impl.Server$2.run(Server.java:800)
at com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:510)
at com.google.net.rpc.impl.Server.startRpc(Server.java:756) …Run Code Online (Sandbox Code Playgroud) 我正在寻找创建一个表单,按Enter键导致焦点转到页面上的"下一个"表单元素.我一直在网上找到的解决方案是......
<body onkeydown="if(event.keyCode==13){event.keyCode=9; return event.keyCode}">
Run Code Online (Sandbox Code Playgroud)
不幸的是,这似乎只适用于IE.所以这个问题的真正含义是,是否有人知道适用于FF和Chrome的解决方案?另外,我宁愿不必将onkeydown事件添加到表单元素本身,但如果这是唯一的方法,那就必须这样做.
这个问题类似于问题905222,但在我看来,这个问题值得我自己提出.
编辑:另外,我已经看到人们提出这个问题并不好,因为它与用户习惯的形式行为不同.我同意!这是客户要求:(
c# ×3
javascript ×3
c++ ×2
html ×2
.net ×1
asp.net-mvc ×1
c ×1
const ×1
dom ×1
dom-events ×1
events ×1
exception ×1
eye-tracking ×1
http ×1
java ×1
linq-to-sql ×1
open-source ×1
pointers ×1
reference ×1
servlets ×1
stack-trace ×1
wcf ×1
wcf-client ×1