小编Kri*_*son的帖子

如何在VB.NET中使用隐式实现创建接口

在C#中,我可以创建一个接口,当我使用该接口时,编译器知道基类满足某些接口要求.通过一个例子可能更清楚:

interface FormInterface
{
    void Hide();
    void Show();
    void SetupForm();
}

public partial class Form1 : Form, FormInterface
{
    public Form1()
    {
        InitializeComponent();
    }

    public void SetupForm()
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

编译器知道Hide()和Show()是在Form中实现的,上面的代码编译得很好.我无法弄清楚如何在VB.NET中这样做.当我尝试:

Public Interface FormInterface
    Sub Hide()
    Sub Show()
    Sub SetupForm()
End Interface


Public Class Form1
    Inherits System.Windows.Forms.Form
    Implements FormInterface

    Public Sub SetupForm() Implements FormInterface.SetupForm

    End Sub

End Class
Run Code Online (Sandbox Code Playgroud)

但编译器抱怨Form1必须为接口'FormInterface'实现'Sub Hide()'.我真的要添加以下内容吗?

Public Sub Hide1() Implements FormInterface.Hide
    Hide()
End Sub
Run Code Online (Sandbox Code Playgroud)

在我的所有表单上,或者是创建具有SetupForm()的抽象基类的更好的路径(以及如何在VB.NET中执行此操作)?

c# vb.net interface

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

外部源地图工具

我在生产中有一个最小化的文件,有一个记录错误的错误处理程序,以及在我缩小文件时生成的源映射,但是我无法将错误映射到我的源文件,因为错误是在日志中并且不会出现在chrome或firefox中,其中很容易消耗缩小的文件和源图.是否有应用程序或工具将使用我生成的源地图将缩小文件中的错误报告转换为原始未分类文件中的位置?所以我要完全清楚

dist.min.js

它由几个js文件组成,然后用uglify.js缩小.我有

dist.min.js.map

这是uglify缩小文件时生成的mapfile.我需要做的是接受错误

ERROR: Uncaught TypeError: Cannot call method 'indexOf' of undefined, dist.min.js:1 "TypeError: Cannot call method 'indexOf' of undefined at distmin.js:1:21815 at ab.event.dispatch (dist.min.js:3:25564) at q.handle (dist.min.js:3:22314)"

并找出我的原始源代码中实际发生错误的位置.我知道如何在Chrome中使用源图,但是是否有一个外部工具可以让我手动输入行和列并显示源代码中的位置?

javascript uglifyjs source-maps

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

为什么Windows窗体和库之间的AppDomain.CurrentDomain.BaseDirectory不同

在我的winforms应用程序中,AppDomain.CurrentDomain.BaseDirectory设置为"C:\ Projects\TestProject\bin\Debug \"

在我的单元测试中,它是"C:\ Projects\TestProject\bin\Debug"(没有最终斜杠).为什么是这样?

[编辑] @Will:我在问为什么测试项目的目录没有尾部斜杠?

.net

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

在Listbox中处理WPF中的图像(内存泄漏)

我有一个ListBox,里面有一堆图像(通过datatemplate完成).通过设置项目来源创建图像:

<Image x:Name="ItemImage" Source="{Binding ImageUrl}"/> 
Run Code Online (Sandbox Code Playgroud)

然后使用列表框的Items.Clear()方法清除它们.使用列表框的Items.Add方法添加新图像.

但是,内存使用量开始上升和上升.它显示的是相同的300个左右的小图像,但内存似乎永远不会被释放.该应用程序开始使用大约40Megs,并迅速攀升至700Megs.如何释放所有这些图像正在使用的内存?

编辑:有一件事我忘了提到,图像(大小各约4-5k)正在通过网络加载.缓存是否以某种方式对此负责?显示12个图像可以咀嚼大约10兆内存,大约是100X文件大小.

c# wpf memory-management

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

jquery:图像后淡入图像

我有一个包含10张图像的页面,我想在下载图像后一个接一个地淡出它们.如何检测图像已加载并准备显示?我应该循环加载图像fadeIn和fadedIn等待下一次加载吗?

jquery list fade

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

Vim errorformat和jslint

我试图让makeprg和errorformat使用VIM和jslint,并且似乎无法获得正确的错误格式...我正在使用jslint的nodejs版本,它产生的结果如下:

1 116,9: The body of a for in should be wrapped in an if statement to filter unwanted properties from the prototype.
    for (var k in o)
Run Code Online (Sandbox Code Playgroud)

我基本上想要匹配行号,列和错误,并使用当前文件作为文件名.有人知道怎么做吗?

要清楚,我正在寻找errorformat来使这个命令工作.目前我的.vimrc文件有

augroup js
    set makeprg=jslint\ %
    set errorformat=%E%>%l,%c:%m,%Z
augroup END
Run Code Online (Sandbox Code Playgroud)

只是不工作(jslint工作正常,但错误格式错误)...

vim errorformat

5
推荐指数
3
解决办法
1312
查看次数

CSS flexbox宽度100%Firefox

我在Firefox中遇到了这种情况的问题.#pager获取其子项的宽度.但是,在Chrome中,它需要其父级的宽度.如何在Firefox中使#item-list尊重其父级的宽度?

看一看!https://jsfiddle.net/owmpatbh/2/

HTML:

<div id="wrapper">
  <div id="sidebar"></div>
    <div id="main">
      <div id="content">
        <p id="stuff">blahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblahblah</p>            
      </div>
      <div id="pager">
          <div id="item-list">
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
              <div class="item"></div>
          </div>
      </div>
   </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS:

#wrapper {


 display: flex;
  width: 100%;
  height: 100%;
}

#sidebar {
  overflow: auto;
  flex: 0.25;
  border:3px solid green;
  min-height: 200px; 
}

#main {
  display: flex;
  flex: .75;
  flex-direction: …
Run Code Online (Sandbox Code Playgroud)

css firefox flexbox

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

Selenium关闭文件选择器对话框

我们在Jenkins盒子(运行linux)上使用Selenium-Webdriver来驱动Firefox来测试一个相当复杂的Web应用程序.Web应用程序需要上传照片进行测试,我们已经通过将sendkeys用于输入文件对话框来实现.不幸的是(可能由于上传器的工作方式,它是通过XHR而不是FORM帖子进行上传和上传)文件选择器对话框永远不会关闭.虽然这有点令人讨厌,但在过去,测试仍然没有通过.从selenium-2.45.0切换到selenium-2.53.1并将FireFox升级到45我们发现我们的测试现在失败了,因为文件选择器对话框导致元素不再可见(至少我们假设元素不再是对点击的反应是因为它们在文件对话框后面).

我意识到没有办法点击关闭对话框按钮,我尝试以各种方式发送转义键来关闭对话框,但我尝试过的任何工作:

((RemoteWebDriver)driver).getKeyboard().pressKey(Keys.ESCAPE);
Run Code Online (Sandbox Code Playgroud)

由于在测试中运行的Jenkins服务器与由Selenium驱动的Firefox不同,因此Roboto和AutoIt不是一个选项.是否有某种方法可以触发关闭不涉及与对话框交互的对话框.我的想法是在页面中注入一些javascript来创建一个围绕文件输入的表单,然后提交表单(无处),然后重新加载页面,但事实证明这是不成功的.

文件上传对话框

java firefox junit selenium selenium-webdriver

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

插入后批准USB设备

在Windows上,有没有办法在插入后以编程方式批准USB设备,如果它是某种类型(比如可移动驱动器)允许其使用,否则不是?也不允许运行驱动程序,只允许以批准的方式使用设备?

IE我们希望允许插入USB驱动器,但不必担心安装病毒.

编辑对不起,我对发布这个问题不是很清楚.是的,这是Windows,但我并不担心自动运行程序,当然这是关闭的.用户将无法访问任何可执行文件,只会从驱动器读取数据.他们将无法访问我们允许的任何UI(它是Kiosk).我关心的是运行和安装软件的设备驱动程序(ala U3,以及插入USB驱动器时自行安装的其他USB软件).野外有很多病毒可以通过将USB驱动器插入系统来运行.我们已经将组策略限制在我们可以达到的水平,但是我找不到一种方法来不允许安装驱动程序而不创建预安装的USB驱动器的基本白名单,其他任何东西都不起作用(即.

windows usb virus kiosk

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

颠覆中的阁楼(乌龟)在哪里?

哎呀,我需要从我删除的文件中获取一些信息,不久前.在CVS中我只是去ATTIC找到它,如何在SVN中找到一个文件而不必回到它存在的修订版(特别烦人,因为我真的不知道什么时候我删除了 - 一周前,两个星期前...)

svn tortoisesvn

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