小编Gol*_*hop的帖子

适用于IE9的Flexbox替代品

我最初开发了一个Chrome网站(最容易设计),但现在我正在使用IE支持模式.

话虽如此,我开始使用IE11并对IE和Chrome之间的古怪差异进行了必要的更改.但现在我正在踩下IE版本.我能够使用CSS为IE10正确显示90%的网页.但是现在我为这两个浏览器提供的大多数CSS元素在很大程度上与IE9无关.

如果可能的话,我希望不再需要多个浏览器特定的样式表.

第一个问题是转换IE的flexbox模型的IE10 +实现.

Flexbox容器的当前实现:

div#navContainer{
    display: flex; //Current browsers (IE11, Chrome, etc)
    display: -ms-flexbox; //IE10 implementation
}

div#TeamsSection {
    text-align: center;
}

div.NavSection {
    margin: 0px 7px;
    padding: 4px 0px 0px 0px;
}

div#teams {
    margin: 0px;

    select {
        margin: 0px;
    }
}
Run Code Online (Sandbox Code Playgroud)

HTML:

<div id="navContainer" class="float-left">
    <div id="LogoSection" class="NavSection">
        <div id="Logo">
            <img src="Images/Logo.png" />
        </div>
    </div>
    <div id="TeamsSection" class="NavSection">
        <label>Select a Team:</label><br />
        <div id="teams"></div>
    </div>
    <div id="UserSection" class="NavSection hidden">
        <label>Select a User:</label><br />
        <div id="requestor"></div>
    </div> …
Run Code Online (Sandbox Code Playgroud)

html css internet-explorer cross-browser flexbox

39
推荐指数
3
解决办法
9万
查看次数

将Dictionary转换为结构化格式字符串

我有一个声明为的Dictionary对象var as Dictionary(of String, String).

我正在尝试使用Generic Collection可用的LINQ扩展,但我只获取非扩展方法.

我需要将Dictionary集合转换为具有以下模式的字符串: key1=val1, key2=val2, ..., keyn=valn

首先做一个foreach循环的想法会到达现场,除了我是程序员阻塞的事实.

到目前为止我所拥有的,但怀疑它是产生这个的最佳逻辑模式:

Public Overrides Function ToString() As String
    Dim ret As String = ""
    For Each kv As KeyValuePair(Of String, String) In Me._set
        If ret <> String.Empty Then
            ret &= ", "
        End If

        ret &= String.Format("{0}={1}", kv.Key, kv.Value)
    Next

    Return ret
End Function
Run Code Online (Sandbox Code Playgroud)

由于某种原因,即使我已将System.Core&System.Linq库导入项目,也没有任何扩展的LINQ扩展出现在我的dev-env intellisense中.所以现在,除非有人可以帮助我在Intellisense中显示LINQ扩展,否则它们是不可能的.

发现LINQ扩展没有出现的问题,所以他们回到了桌子上;)

vb.net collections .net-4.0 generic-collections

8
推荐指数
2
解决办法
8802
查看次数

动态版本控制

我有一种情况,我希望版本控制在构建时是动态的.

版本模式: <year>.<month>.<day>.<hhmm>

但我已经读过在编译时重新分析属性中使用的String值的位置.

有关如何完成动态版本控制的任何建议吗?

理想情况:

<Assembly: AssemblyVersion("4.0.0.0")> 
<Assembly: AssemblyFileVersion(Year(Now) & "." & Month(Now()) & "." & Day(Now()) & "." & String.format("hhmm", now()))> 
Run Code Online (Sandbox Code Playgroud)

我知道它不会工作,但应该得到交叉点.

c# vb.net assemblyfileversion

8
推荐指数
1
解决办法
1357
查看次数

复合增量列

我有一种情况,我需要将辅助列递增1,假设另一列的值相同.

表模式:

CREATE TABLE [APP].[World]
(
    [UID] [uniqueidentifier] ROWGUIDCOL  NOT NULL,
    [App_ID] [bigint] NOT NULL,
    [id] [bigint] NOT NULL,
    [name] [varchar](255) NOT NULL,
    [descript] [varchar](max) NULL,
    [default_tile] [uniqueidentifier] NOT NULL,
    [active] [bit] NOT NULL,
    [inactive_date] [datetime] NULL
)
Run Code Online (Sandbox Code Playgroud)

首先,UID无论是什么,我都是独一无二的App_ID.

在我的情况下,我希望id与之相似Increment(1,1),只是为了相同App_ID.

假设:

  1. 有3 App_Id:1,2,3

场景:

  • App_ID 1有3个世界
  • App_ID 2有5个世界
  • App_ID 3有1个世界

理想的结果:

App_ID  id
1       1
2       1
3       1
1       2
2       2
1       3
2       3
2       4 …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server sql-server-2008-r2 database-schema sql-server-2012

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

关闭然后打开工作簿

我需要关闭我有一个宏的工作簿,然后在关闭后重新打开它。

在进程结束时对某些设置值进行各种更改,然后保存更改文件的副本。保存更改后的文件后,我想关闭当前工作簿(不保存更改),然后打开它,这样我就可以像更改发生之前一样打开它。

如果有比关闭然后打开更好的方法,请务必接受建议。

这个逻辑需要发生在工作簿中,而不是工作簿之外的任何地方,IE no Personal.xlsm 或其他不会随工作簿一起移动的个人方法位置。

excel vba excel-2010

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

内联定义和声明

好吧,我确定我错误地写了这个概念,但不管怎么说.

我知道你可以在CSharp中做到

el.AppendChild(new UISize(file, "TSize") { CX = 95, CY = 20 });
Run Code Online (Sandbox Code Playgroud)

它声明了一个临时的bucket变量,然后将关联属性值赋给变量.然后将其发送到XMLElement AppendChild方法.

  1. 这个设计概念叫什么?
  2. 什么是VB.Net的转换?

我尝试使用自己的在线工具,从C#< - > VB.Net获得90-95%的转换率.它在这种情况下失败了,所以需要提一下我要做的事情,将它从C#转换为VB.Net.

如果可能的话,我真的不想做一个带有赋值的变量的长声明.

c# vb.net object-initializers

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

范围中的最后一行

在找到产生所需结果的信息和/或解决方案时遇到问题,所以在这里.

现在,可能在生产时,我将在工作表上有一个名为范围的"模板".在第一次使用时,这个NamedRange只是rngNamed1在第一次使用之后,可能会有更多类似于这个的命名范围,比如说rngNamed30.

让我们说,在第二次运行之后rngNamed30,我需要再添加3个NamedRange,结果是rngNamed33.

我需要做的是基本上找到最后一个命名范围的最后一行和列,所以我知道从哪里开始复制数据并声明下一个命名范围.

到目前为止我尝试了什么:

Dim rng As range
Set rng = range("rngNamed1")
'Set rng = rng.Find("*", rng.Cells(1, 1), xlFormulas, xlPart, xlByRows, xlPrevious, False)
Debug.Print rng.Find("*", rng.Cells(1, 1), , , , xlPrevious).Address
Run Code Online (Sandbox Code Playgroud)

大多数解决方案存在的问题是它们基于找到最后一个单元格数据.我只需知道范围的最后一个单元格,无论它是否包含数据.

excel vba excel-vba excel-2010

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

使派生类中需要基方法

我正在构建一些类,并且基类中有一个方法,需要包含在该方法的派生类实现中。

我该如何执行此操作?

例如:

public class base{
  public base(){}

  public void Method(base val){
    //Logic implementation
  }
}

public class derive:base{
  public derive():base(){}

  public void Method(derive val){
    base.Method(val);
    
    //Logic implementation
  }
}
Run Code Online (Sandbox Code Playgroud)

c#

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

控制Struct对象的大小和范围

我正在构建一个库的设计,因为我不熟悉C#,想要创建一个结构(值类型)并让它在内部管理.当有人赋值意思表示的结构,它会(此实例)验证该值的长度,做价值的一些卫生(即转whitespaceunderscores,等).

它控制着我所处的价值.如果它是一个普通的类,我只是将一个事件附加到赋值并执行所有验证,但是因为一个类对于我要创建的对象来说是过度的,我认为一个struct对象是最合适的.

结构设计,可能不干净,但我到目前为止:

public struct ST_Keytip
{
    private string _value;

    [DefaultProperty]
    public string FooBar
    {
        get { return this._value; }
        set
        {
            if (len(value) < 1 or len(value) > 3)
            {
                throw new exception("blah blah blah....PUKE!!!!")
            }
            else
            {
                this._value = value;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我确定它不是一个干净的C#设计,但如果它是一个类对象我会做什么.基本上我不需要它实例化(因此我没有使用类),它应该持有一个值.我只是想知道我是否可以为结构附加值验证,如果我可以如何?如果不是,那么拥有一个对其赋值有限制的值类型的最佳方法是什么?

c# struct c#-4.0

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

编写HttpResponse和HttpResponseBase的扩展

我有一种情况,我想写一个可以在HttpResponse和HttpResponseBase上使用的扩展.

经过一番研究,发现两者都是兄弟姐妹,但只能通过Object类的简单扩展.

由于您只能使用一个特定的类定义Generic,因此我遇到了必须编写两次相同方法来处理两个不同对象模型的问题:Web应用程序重定向和MVC重定向.

目前的实施,虽然我不喜欢它:

public static void RedirectTo404(this HttpResponseBase response)
{
    response.Redirect("~/404.aspx");
}
public static void RedirectTo404(this HttpResponse response)
{
    response.Redirect("~/404.aspx");
}
Run Code Online (Sandbox Code Playgroud)

我想有这样的东西(我知道它在语法上不可能,但是要提出一个想法)

public static void RedirectTo404<T>(this T response) where T : HttpResponseBase , HttpResponse
{
    response.Redirect("~/404.aspx");
}
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc

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

类型检查 WebControl

我知道在 VBA 中如何对控件类型进行 Select..Case 比较,如下所示:

Select Case TypeName(ctrl)
  case is = "ListBox"
    ...
  case is = "ComboBox"
    ...
  ...
End Select
Run Code Online (Sandbox Code Playgroud)

在 VB.Net 中,我可以使用上面的一般值,还是必须在文本中使用命名空间限定符?

目前实施:

public function Validate(byref ctrl as WebControl) as boolean
  select case TypeName(ctrl)
    case is = "TextBox"
      ....
    case is = "Label"
      ....
    ...
  End select
End Function
Run Code Online (Sandbox Code Playgroud)

vb.net asp.net

0
推荐指数
1
解决办法
1074
查看次数