在C#/ Winforms中,如何在应用程序启动时设置默认焦点?
如何基于变量类型字符串(包含对象的名称)在javascript中创建新对象?
现在我有:(随着更多工具的到来,列表会变得更长......)
function getTool(name){
switch(name){
case "SelectTool":
return new SelectTool();
break;
case "LineTool":
return new LineTool();
break;
case "BlurTool":
return new BlurTool();
break;
case "PointerTool":
default:
return new PointerTool();
break;
}
}
Run Code Online (Sandbox Code Playgroud)
并定义了我的工具:
PointerTool.prototype = new Tool;
PointerTool.prototype.constructor = PointerTool;
function PointerTool(){
this.name = "PointerTool";
}
PointerTool.prototype.click = function(x, y){
info("You clicked at: "+x+", "+y);
}
Run Code Online (Sandbox Code Playgroud)
我想得到(不断增长的)开关声明,似乎'错了'.
假设我有一个html5/canvas应用程序,我可以在其中放置绘图画布上的对象.某种图编辑器,比如Visio(但更简单)
有没有一个框架可以帮助我找到被点击/拖动的对象?
一个选项是捕获click事件并迭代我的所有对象(以半智能的方式)并检查它是否被点击/拖动,但我讨厌重新发明轮子:)
当启动一个新的mvvm-wpf应用程序时,我通常在开始时包含mvvm-light.这很好,直到我的应用程序增长.
一些沿着ViewModelLocator变得庞大的地方(许多ViewModel用于各种ChildViewodel).甚至在兔子洞的下方,我需要同一个视图模型的多个不同实例.(例如,对于要在同一屏幕上与之交互的项目列表).这是斗争开始的地方,如何处理好,始终如一地保持代码可测试?
那么,如果我想摆脱ViewModelLocator(它是一个反模式吗?感觉就像一个ServiceLocator)我应该首先转移到ViewModel并为所有ViewModel创建(许多)抽象工厂吗?
javascript ×2
c# ×1
canvas ×1
controls ×1
dom-events ×1
dynamic ×1
focus ×1
frameworks ×1
html ×1
init ×1
mvvm ×1
mvvm-light ×1
winforms ×1