我有以下行动:
abstract class AAction
{}
class BlueAction: AAction
{
void Foo1(){// do stuff}
void Foo2(){// do stuff}
}
Run Code Online (Sandbox Code Playgroud)
以及应包含操作的插件:
class APlugin
{
AAction _action;
APlugin(AAction action)
{
_action = action;
}
}
class BluePlugin: APlugin
{
BluePlugin(): base(new BlueAction());
{
}
voif Foo()
{
// do stuff with BlueAction's methods
((BlueAction)_action).Foo1();
((BlueAction)_action).Foo2();
}
}
Run Code Online (Sandbox Code Playgroud)
我试图将这种设计融入设计模式,没有运气.
我只想要强制派生类APlugin来拥有一个AAction
我可以做到这一点:
BlueAction act = (BlueAction)_action;
act.Foo1();
act.Foo2();
Run Code Online (Sandbox Code Playgroud)
使用泛型(如建议)不允许我有一个APlugins列表,这是我真正需要的.
但这对我来说是不行的.有任何想法吗?
如何使用linq或lambda表达式获取开始日期和结束日期之间的日期列表.
DateTime StartDate = DateTime.Now;
DateTime EndDate = DateTime.Now.AddMonths(13);
List<DateTime> ListofDates = //Contains list of all dates only between start and end date.
Run Code Online (Sandbox Code Playgroud) 我有一张表格webbrowser.事件:Navigating,Navigated和DocumentCompleted连接.
这是我告诉它后得到的 .Navigate(new Url("http://google.com"));
20:42:42:036: 1. Navigating to: http://google.com/
20:42:42:545: 2. Navigated: http://www.google.com/
20:42:42:854: 3. Navigating to: about:blank
20:42:43:002: 4. Navigated: about:blank
20:42:43:004: 5. Loaded: about:blank
20:42:43:158: 6. Loaded: http://www.google.com/
Run Code Online (Sandbox Code Playgroud)
有人可以解释为什么我会得到这些about:blank东西吗?
代码只显示e.Url每个事件处理程序的参数.
我正在尝试使用Twitter Bootsrap的bootbox.
在我使用的下面的代码中this.attr('href');,我得到了TypeError: this.attr is not a function.
当我改变到$(this).attr('href');我得到Undefined.
<a class="alert" href="list_users.php?id=123">Delete user</a>
<script src="bootbox.min.js"></script>
<script>
$(document).on("click", ".alert", function(e) {
e.preventDefault();
bootbox.confirm("Are you sure?", function(result) {
if (result) {
document.location.href = this.attr('href'); // doesn't work
document.location.href = $(this).attr('href'); // Undefined
}
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
任何的想法?
我通过一个事件得到一个字符串消息,我把它放在一个TextBox中.不幸的是,这条消息有很多空行.如何用一个替换两个空行?
我的第一个想法是这样的:
string newLine = Environment.NewLine;
textbox.text = msg.Replace(newLine + newLine, newLine);
Run Code Online (Sandbox Code Playgroud)
我相信有更好的方法来实现这一目标.