小编Fur*_*dar的帖子

在WPF中以编程方式创建ControlTemplate

如何以编程方式设置按钮的模板?

Polygon buttonPolygon = new Polygon();
buttonPolygon.Points = buttonPointCollection;
buttonPolygon.Stroke = Brushes.Yellow;
buttonPolygon.StrokeThickness = 2;

// create ControlTemplate based on polygon
ControlTemplate template = new ControlTemplate();
template.Childeren.Add(buttonPolygon); // This does not work! What's the right way?

//create button based on controltemplate
Button button = new Button();
button.Template = template;
Run Code Online (Sandbox Code Playgroud)

所以我需要一种方法将我的Polygon设置为按钮的模板.建议?

谢谢.

wpf code-behind controltemplate

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

使用iTextSharp从PDF中删除水印

我使用Pdfstamper在pdf上添加了水印.这是代码:

for (int pageIndex = 1; pageIndex <= pageCount; pageIndex++)
{
    iTextSharp.text.Rectangle pageRectangle = reader.GetPageSizeWithRotation(pageIndex);
    PdfContentByte pdfData = stamper.GetUnderContent(pageIndex);
    pdfData.SetFontAndSize(BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, 
        BaseFont.NOT_EMBEDDED), watermarkFontSize);
    PdfGState graphicsState = new PdfGState();
    graphicsState.FillOpacity = watermarkFontOpacity;
    pdfData.SetGState(graphicsState);
    pdfData.SetColorFill(iTextSharp.text.BaseColor.BLACK);
    pdfData.BeginText();
    pdfData.ShowTextAligned(PdfContentByte.ALIGN_CENTER, "LipikaChatterjee", 
        pageRectangle.Width / 2, pageRectangle.Height / 2, watermarkRotation);
    pdfData.EndText();
}
Run Code Online (Sandbox Code Playgroud)

这很好用.现在我想从我的pdf中删除这个水印.我查看了iTextSharp,但未能得到任何帮助.我甚至尝试将水印添加为图层,然后删除图层,但无法从pdf中删除图层的内容.我查看了iText的图层删除,发现了一个OCGRemover类,但我无法在iTextsharp中获得一个等效的类.

c# pdf itextsharp

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

将less和css文件捆绑在一起

我觉得捆绑应该被用来将你一起使用的一堆文件分组到浏览器中.这意味着例如我的root风格,我想做类似以下的事情:

var bundle = new StyleBundle("~/Content/style").Include(
    "~/Content/mystyle.less",
    "~/Content/bootstrap.css",
    "~/Content/bootstrap-responsive.css");
bundle.Transforms.Add(new LessTransform());
bundle.Transforms.Add(new CssMinify());
bundles.Add(bundle);    
Run Code Online (Sandbox Code Playgroud)

但是,对于捆绑较少文件自定义转换技术来说,这似乎并不能很好地工作,因为它看起来像将所有文件预先捆绑到单个css文件中,然后再将其传递给LessTransform.据我所知,只有将所有较少的文件捆绑在一起时,此方法才有效.

有没有办法让bundle在同一个bundle中允许less和css文件?

c# less asp.net-mvc-4 bundling-and-minification

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

为什么Array.BinarySearch()给出负数?

我有一些代码对我没有多大意义.我有一个字符串数组,我正在使用二进制搜索在foreach()循环中计算它们.除了排序之外,我尝试输出时的代码完全相同.我不知道为什么我得到了我得到的结果.我认为它应该只计算数组的值,两次都是相同的.有帮助吗?

码:

using System;
public class Driver {
    public static void Main(string [] args) {
        String [] s = {"Bob", "Jane", "Will", "Bill", "Liz"};

        Console.WriteLine("Before Sorting:\n----------");
        foreach(string item in s) {
            Console.WriteLine("{0}. {1}", Array.BinarySearch(s, item) + 1, item);
        }
        Console.WriteLine("Will is at position {0}", Array.BinarySearch(s, "Will") + 1);

        Console.WriteLine("\n\nAfter Sorting:\n----------");
        Array.Sort(s);
        foreach(string item in s) {
            Console.WriteLine("{0}. {1}", Array.BinarySearch(s, item) + 1, item);
        }
        Console.WriteLine("Will is at position {0}", Array.BinarySearch(s, "Will") + 1);
    }
}
Run Code Online (Sandbox Code Playgroud)

输出:

Before Sorting:
----------
1. …
Run Code Online (Sandbox Code Playgroud)

c#

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

为什么不在GC.Collect上重新抛出任务异常

我的理解是当一个Task抛出异常时,当观察到Tasks的(Result,WaitAll)属性或GC发生时,它会被存储并重新抛出.鉴于此,我运行以下代码.

Task t = Task.Factory.StartNew(() =>
{                    
    throw new Exception("Hello World");
});

for (int i = 0; i < 10000; i++)
{
    Console.WriteLine(i);
}    

 GC.Collect();

 for (int a = 20; a < 30; a++)
 {
      Console.WriteLine(a);
 }
Run Code Online (Sandbox Code Playgroud)

但是当我运行上面的代码时,我除了在GC.Collect上抛出一个异常但它没有发生,而是继续从第二个循环打印输出.我的理解在哪里错了?

c# task c#-4.0

5
推荐指数
2
解决办法
320
查看次数

如何使用jQuery获取表列索引?

我对jQuery及其用法有足够的了解但是今天我遇到thtable使用jQuery 获取匹配标签的列索引的麻烦.我想获得th具有label文本的元素索引为Mobile.在这种情况下,索引应为2.我得到的是实际索引,但这不是正确的方法.所以我想知道为什么jQuery没有给我正确的索引使用index()方法.

我也为此编写了JS Fiddler.

jQuery的

var elem = $('#tbl th');
var rIndex;
alert('Length : ' + elem.length);
var index = elem.filter(
    function(index){
        var labelText = $(this).find('label').text();        
        //alert(index + ' - ' + labelText);
        var result = labelText == 'Mobile';
        if (result)
            rIndex = index;
        return result;
    }).index();
alert("jQuery Index : " + index);
alert("Actual Index : " + rIndex);
Run Code Online (Sandbox Code Playgroud)

HTML

<table id="tbl">
    <tr>
        <td></td>
        <th><label>Application No.</label></th> …
Run Code Online (Sandbox Code Playgroud)

html indexing jquery html-table

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

C#Linq/Lambda表达式:如何从字符串中选择一个整数?

我认为解释我的问题的最好方法是使用简短的(通用的)linq-to-objects代码示例:

IEnumerable<string> ReadLines(string filename)
{
    string line;
    using (var rdr = new StreamReader(filename))
        while ( (line = rdr.ReadLine()) != null)
           yield return line;
}

IEnumerable<int> XValuesFromFile(string filename)
{
    return ReadLines(filename)
               .Select(l => l.Substring(3,3))
               .Where(l => int.TryParse(l))
               .Select(i => int.Parse(i));
}
Run Code Online (Sandbox Code Playgroud)

请注意,此代码解析整数两次.我知道我错过了一种明显的简单方法来安全地消除其中一个呼叫(因为我之前已经完成了).我现在找不到它.我怎样才能做到这一点?

c# linq linq-to-objects

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

如何在C#中将某些条件设置为真并行处理输入

我正在使用一个位于(例如)a StreamReader或者顶部的界面SqlDataReader.接口公开一个方法,GetNext()如果有任何对象,或者null如果没有剩下,则返回一个对象.

public interface ICollectionWidget<T>
{
    T GetNext(); // Returns a T if there are any left, or null if there aren't
}
Run Code Online (Sandbox Code Playgroud)

我需要并行处理每个T返回的GetNext(),并在GetNext()返回时停止处理 null.我不太确定这是怎么做的(使用TPL或其他).我需要一种平行while!显然,我不希望任何线程仍然处理完成,当我得到一个null,我只是不想添加任何新的处理 - 然后当所有线程完成他们正在做的事情时退出'循环' .

有人可以帮忙吗?如果我的问题没有意义,请告诉我.

c# parallel-processing while-loop

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

使用正则表达式从字符串中重写数字

我想做的事情很简单,虽然我遇到了困难.我有一个字符串是一个网址,它将具有格式http://www.somedomain.com?id=someid我想要检索的是someid部分.我想我可以使用正则表达式,但我对它们不是很好,这是我试过的:

Match match = Regex.Match(theString, @"*.?id=(/d.)");
Run Code Online (Sandbox Code Playgroud)

我得到一个正则表达式异常,说解析正则表达式时出错.我读的方法就是"any number of characters"则文本"?id="跟随"by any number of digits".我把数字放在一个组中,这样我就可以将它们拉出来.我不确定这有什么问题.如果有人能告诉我我做错了什么我会很感激,谢谢!

.net c# regex

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

使用 C# 中的 WebRequests 登录 YouTube

我对在 C# 中使用 WebRequests 还很陌生,想要一些帮助登录 YouTube 并将 cookie 存储到 cookie 容器中。任何帮助将非常感激。

c# youtube login

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