小编B. *_*non的帖子

如何获取表单上的所有标签并将具有特定名称模式的Text属性设置为string.empty?

我想清除控件是标签的表单上的所有值,其名称以"label"开头

这段代码:

List<Label> lbls = this.Controls.OfType<Label>().ToList();
foreach (var lbl in lbls)
{
    if (lbl.Name.StartsWith("label"))
    {
        lbl.Text = string.Empty;
    }
}
Run Code Online (Sandbox Code Playgroud)

...不起作用,因为lambda找不到任何东西--lbls.Count = 0.

这不会获得表单上的所有控件,即使是其他控件的子控件(例如,在我的情况下,Panels)?

c# generics lambda dynamic winforms

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

为什么Visual Studio和Resharper无法识别这样的死代码?

在我第一次编辑本周的过程中发生了一件有趣的事情.我遇到了这行代码:

if (SetFetchTab)
    tabMain.SelectedIndex = 1;
Run Code Online (Sandbox Code Playgroud)

...并决定,好吧,我会把它变成一个const来使它更​​具可读性,并在我使用时将它括在括号中,以防以后需要将额外的代码添加到这个条件中:

const int FETCH_TAB = 0;
const int CONNECTION_TAB = 1;
. . .
if (SetFetchTab)
{
    tabMain.SelectedIndex = CONNECTION_TAB;
}
Run Code Online (Sandbox Code Playgroud)

然后好奇心得到了我的好处,我决定找出SetFetchTab赋值的位置......它不是 - 除了隐式赋值false/0声明它:

public static bool SetFetchTab;
Run Code Online (Sandbox Code Playgroud)

有一次,另一种形式有条件地将SetFetchTab设置为0或1,但该代码现在被注释掉了.因此,上面的条件永远不会成立,并且SelectedIndex永远不会被赋值CONNECTION_TAB/1.因此,为什么这个块没有灰化,表明它是死代码?

BTW,FETCH_TAB 灰化/识别为死声明,因为tabMain.SelectedIndex从未被赋值为0,因此我无处可用.

c# resharper visual-studio

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

为什么lightbox jQuery插件不适合我?

按照这里的说明进行操作:http://lokeshdhakar.com/projects/lightbox2/和"Murach的JavaScript和jQuery"一书(第320页和第321页),我正在尝试为我的网站添加灯箱功能.

我添加了lightbox.css(和screen.css,可能也需要它),以及我的Content文件夹,以及lightbox.js和jquery.smooth-scroll.min.js(因为它包含在灯箱下载中,我想象灯箱需要它)到我的Scripts文件夹.

我还在我的Images文件夹中添加了以下图片:light.png,loading.gif,next.png和prev.png.

我有这个html和jQuery代码(这是整个Default.cshtml):

@{
    Layout = "~/_SiteLayout.cshtml";
    Page.Title = "el Garrapata - Spoon!!!";
}

<div id="tabs">
    <ul>
    <li><a href="#tabs-1">Spring</a></li>
    <li><a href="#tabs-2">Summer</a></li>
    <li><a href="#tabs-3">Fall</a></li>
    <li><a href="#tabs-4">Winter</a></li>
    </ul>
    <div id="tabs-1">
        <a href="Images/Fullsize/Landscapes/Spring_2013 04 06_2293.jpg" rel="lightbox" ><img src="Images/Thumbnails/Landscapes/Spring_2013 04 06_2293_th.jpg" width="300" height="200"></a>
    </div>

    <div id="tabs-2">
    </div>

    <div id="tabs-3">
    </div>

    <div id="tabs-4">
    </div>

</div>

    <script type="text/javascript">
        $(document).ready(function () {
            $("#tabs").tabs();
        });
    </script>
Run Code Online (Sandbox Code Playgroud)

...但它不起作用:虽然在"弹簧"选项卡中显示一个缩略图图像,但单击它只会导致屏幕大部分变暗 - 它变得"灰显"到几乎不透明的程度.

灯箱下载还包括jquery-1.7.2.min.js和jquery-ui-1.8.18.custom.min.js

我在_SiteLayout.cshtml中引用了较新的版本:

<script src="~/Scripts/jquery-2.0.0.min.js"></script>
<script src="~/Scripts/jquery-ui-1.9.2.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

这可能是问题吗?如果我想使用lightbox,我是否"使用旧版本的jQuery和jQueryUI"?

顺便说一下,我试图在灯箱的内部论坛发帖,但无法登录,无论是Fakebook还是谷歌(虽然我(不情愿的是前者)帐户同时兼顾;也是我试过的OpenID爵士乐,但它似乎期待一个URL ...... ???)

UPDATE

注意:我打算尽快给这个问题留100分.如果我在此之前得到答案,我将奖励赏金后答案.

更新2

我已经切换到fancyBox,但是当点击"缩略图"而不是中心时,大(href)图像仍然拥抱页面的左侧.这里是所有Razor,HTML和jQuery(为简洁起见,一些图像代码被省略): …

html jquery jquery-ui jquery-plugins lightbox

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

为什么字体大小普遍应用时不可靠?

使用以下 CSS:

* {
    margin: 0;
    padding: 0;
    font-family:"Segoe UI";
    font-variant: small-caps;
}
.red {
    color: hsl(0, 100%, 50%);
    font-size: 3em;
}
.orange {
    color: hsl(30, 100%, 50%);
    font-size: 3em;
}
.yellow {
    color: hsl(60, 100%, 50%);
    font-size: 3em;
}
.green {
    color: hsl(120, 100%, 50%);
    font-size: 3em;
}
.blue {
    color: hsl(210, 100%, 50%);
    font-size: 3em;
}
.indigo {
    color: hsl(230, 100%, 50%);
    font-size: 3em;
}
.violet {
    color: hsl(274, 100%, 50%);
    font-size: 3em;
}
Run Code Online (Sandbox Code Playgroud)

... * 选择器中的属性工作正常 - …

css font-size

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

如何在 .NET Framework 4.5 应用程序/网站中使用 HttpClient?

基于这里的答案:How can Iretrieve and parse just the html returned from an URL?

...我尝试首先添加基于此处找到的代码:http://msdn.microsoft.com/en-us/library/system.net.http.httpclient.aspx

...即将其添加到 \App_Code\Functions.cshtml:

@functions
{
    public static string GetUrlHtml(string dynamicUrl)
    {
        HttpClient client = new HttpClient();
        string body = await client.GetStringAsync(dynamicUrl);
    // parse it using HTML Agility Pack? (http://htmlagilitypack.codeplex.com/)
    }
}
Run Code Online (Sandbox Code Playgroud)

HttpClient 无法识别,并且不提供“解析”上下文菜单项。输入后,Intellisense 不向我提供“Http”:

@using System.Net.
Run Code Online (Sandbox Code Playgroud)

HttpClient 真的对我不可用吗?如果可以的话,我能得到什么作为安慰奖呢?我最好的选择是像这样使用 WebClient:

WebClient wc = new WebClient();
string body = wc.DownloadString(dynamicUrl);
// parse it with html agility pack
Run Code Online (Sandbox Code Playgroud)

...或者,如https://web.archive.org/web/20211020001935/https://www.4guysfromrolla.com/articles/011211-1.aspx#postadlink所示,我可以使用 webGet 类HTML 敏捷包:

var webGet = new HtmlWeb(); …
Run Code Online (Sandbox Code Playgroud)

asp.net http razor asp.net-4.5 dotnet-httpclient

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

C#中的"| ="运算符是什么?

在研究错误的原因时,我遇到了这行代码:

Status |= (int)states.Reading;
Run Code Online (Sandbox Code Playgroud)

C#中的"| ="运算符是什么?

因此"状态"定义如下:

public static int Status 
Run Code Online (Sandbox Code Playgroud)

...使用存取器和mutator(或"getter"和"setter"),而"states"以这种方式定义:

[Flags]
public  enum states
Run Code Online (Sandbox Code Playgroud)

c# windows-ce nullreferenceexception enum-flags

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

如何获得与复选框相关的标签值(我是否打破了jsfiddle)?

我需要构建一个用户选择的csv dept数字.

我从这个HTML开始:

<button id="btnDept">select Depts</button>
<div id="dialog" title="Select the Depts you want to include in the report" style="display:none;">
    <div>
        <label for="ckbx2">2</label>
        <input type="checkbox" id="ckbx2" />
        <label for="ckbx3" id="lbl3">3</label>
        <input type="checkbox" id="ckbx3" />
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

...而这个jQuery:

var deptsSelected = '';
$("#btnDept").click(function () {
    $("#dialog").dialog({
        modal: true
    });
    $('checkbox').click(function() {
        deptsSelected += this.val + ',';
        alert(deptsSelected);
    });
});
Run Code Online (Sandbox Code Playgroud)

...这对于显示选择的depts没有任何作用 - 这是有道理的,因为"this"可能是复选框,当然也不是标签.我将在这个对话框中有几十个复选框,并且不想写这样的东西:

$('#ckbx3').click(function(){deptsSelected + = $('lbl3').val +','; alert(deptsSelected);});

...对于每个复选框/标签对(即使使用这种强力方法,上面的代码显示了此警报,而不是我期望/希望的:

在此输入图像描述

天堂到Murgatroid /什么是kerfluffle?!?

jsfiddle在这里:http://jsfiddle.net/clayshannon/aWpPN/

html jquery jquery-ui jsfiddle

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

将int转换为double时,如何显示小数点和后面的两个位置?

给定值123,1234和12345,我需要将它们分别转换为1.23,12.34和123.45

这段代码,当我输入123,然后是1234,然后12345进入textbox2:

int originalVal = Convert.ToInt16(textBox2.Text);
double doubled = Convert.ToDouble(originalVal/100);
Run Code Online (Sandbox Code Playgroud)

...给我1,12和123而不是预期的1.23,12.34和123.45.

我需要做些什么才能获得理想的结果?请注意,这是使用VS2003和.NET 1.1的Windows CE/Compact Framework项目.

c# math .net-1.1 compact-framework windows-ce

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

是否可以编写完全可维护的代码?

我下载了"Microsoft CodeLens Code Health Indicator"VS 2013扩展(http://visualstudiogallery.msdn.microsoft.com/f85a7ab9-b4c2-436c-a6e5-0f06e0bac16d)

...并打开一个简单的实用程序.我的方法得分从52的低点到92的高点.

微软编写的方法是唯一一个得分较高的方法.

1 reference | maintainability 94
public Form1()
{
    InitializeComponent();
}
Run Code Online (Sandbox Code Playgroud)

注释掉"InitializeComponent();" 将可维护性提高到最大值(100),但当然,至少在这种情况下,最终的可维护性也是可用性的负极限.

有没有办法在有用的代码上获得100分?

UPDATE

这里的一些代码排名100%可维护:

在此输入图像描述

c# visual-studio-2013 codelens

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

LINQ语句中是Select可选吗?

我正在查看一些LINQ示例,因此提醒他们应该在最后有一个"select"子句.

但我有一个LINQ工作,没有"选择":

public IEnumerable<InventoryItem> Get(string ID, int packSize, int CountToFetch)
{
    return inventoryItems
        .Where(i => (i.Id.CompareTo(ID) == 0 && i.PackSize > packSize) || i.Id.CompareTo(ID) > 0)
        .OrderBy(i => i.Id)
        .ThenBy(i => i.PackSize)
        .Take(CountToFetch)
        .ToList();
}
Run Code Online (Sandbox Code Playgroud)

这是因为:

(a) select is not really necessary?
(b) Take() is doing the "select"
(c) ToList() is doing the "select"
Run Code Online (Sandbox Code Playgroud)

说实话,这是在我添加"ToList()"之前的工作......所以看起来LINQ在允许一个人逃脱的方面是非常宽容/宽松的.

另外,在我正在使用的LINQ中,我认为OrderBy和ThenBy是冗余的,因为用于填充inventoryItems的SQL查询已经具有ORDER BY ID,PackSize子句.我是对的(.OrderBy()和.ThenBy()是不必要的)?

linq ienumerable select tolist take

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