小编Tsu*_*asa的帖子

在电子邮件中发送内联图片

通过电子邮件将图像作为嵌入图像发送到正文中时出现问题.图像文件显示为附件,但是内嵌图像部分显示为红色x.

这是我到目前为止所拥有的

LinkedResource inline = new LinkedResource(filePath);
inline.ContentId = Guid.NewGuid().ToString();
MailMessage mail = new MailMessage();
Attachment att = new Attachment(filePath);
att.ContentDisposition.Inline = true;
mail.From = from_email;
mail.To.Add(data.email);
mail.Subject = "Client: " + data.client_id + " Has Sent You A Screenshot";
mail.Body = String.Format(
    "<h3>Client: " + data.client_id + " Has Sent You A Screenshot</h3>" +
    @"<img src=""cid:{0}"" />", inline.ContentId);

mail.IsBodyHtml = true;
mail.Attachments.Add(att);
Run Code Online (Sandbox Code Playgroud)

c# email smtp inline image

95
推荐指数
7
解决办法
17万
查看次数

Datagridview完整行选择但获取单个单元格值

我有一个datagridview是一个完整的行选择.如果点击行中的哪个单元格,我将如何仅从某个单元格中获取数据,因为它突出显示整行.

c# datagridview winforms

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

Excel Date列使用EPPlus返回INT

所以我正在使用EPPlus来读写excel文档.

工作流程

  • 用户生成填充的Excel文档
  • 打开文档并添加一行
  • 上传并阅读

我在使用EPPlus创建文档时生成的日期在我正在读取值时正确显示,但是用户更改日期或添加的行显示为INT值而不是我可以用作实际日期的值.

当我输入日期1/01/2014并写入时,我打开文件时的输出显示41640

我正在读它如下

sheet.Cells[i, "AE".ConvertExcelColumnIndex()].Value != null
     ? sheet.Cells[i, "AE".ConvertExcelColumnIndex()].Value.ToString().Trim()
         : string.Empty
Run Code Online (Sandbox Code Playgroud)

更新

导出文件时,我添加了以下内容

DateTime testDate;

if (DateTime.TryParse(split[i], out testDate))
{
    sheet.Cells[row, i + 1].Style.Numberformat.Format = "MM/dd/yyyy";
    sheet.Cells[row, i + 1].Value = testDate.ToString("MM/dd/yyyy");
}
Run Code Online (Sandbox Code Playgroud)

在读取价值时我也试过了

sheet.Cells[i, "AE".ConvertExcelColumnIndex()].Style.Numberformat.Format = "MM/dd/yyy";
Run Code Online (Sandbox Code Playgroud)

我还是回来了INT

c# excel epplus

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

Objective-C获取目录中的文件和子文件夹列表

从给定目录获取完整文件/文件夹路径的数组列表有什么技巧?我希望在给定目录中搜​​索以.mp3结尾的文件,并且需要包含文件名的完整路径名.

NSArray* dirs = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:sourcePath error:Nil];

NSArray* mp3Files = [dirs filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self ENDSWITH '.mp3'"]];
Run Code Online (Sandbox Code Playgroud)

这只返回文件名而不是路径

objective-c

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

如何创建单个实例WPF应用程序,在尝试打开另一个实例时还原打开的窗口?

对不起,标题很难理解.我不确定如何说出来.

我有一个应用程序,只允许每个用户会话运行一个实例.如果用户再次单击以启动应用程序,我希望将该应用程序重点关注.

该窗口可能具有折叠的可见性.

如果它可见,我知道我可以使用

if (IsIconic(hWnd))
{
    ShowWindowAsync(hWnd, swRestore);
}

SetForegroundWindow(hWnd);
Run Code Online (Sandbox Code Playgroud)

但是如果窗户折叠了,有没有办法让我把它带回可见的?

c# wpf

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

WPF:获取截图的方法

希望修改以下内容以截取所有显示器的屏幕截图.我试过调整它但我的图像是空白的.将它写入test.png是为了测试.在byte[]将被发送到接收应用程序.

public byte[] Take()
{
    int screenWidth = Convert.ToInt32(SystemParameters.VirtualScreenWidth);
    int screenHeight = Convert.ToInt32(SystemParameters.VirtualScreenHeight);
    int screenLeft = Convert.ToInt32(SystemParameters.VirtualScreenLeft);
    int screenTop = Convert.ToInt32(SystemParameters.VirtualScreenTop);

    RenderTargetBitmap renderTarget = new RenderTargetBitmap(screenWidth, screenHeight, 96, 96, PixelFormats.Pbgra32);
    VisualBrush sourceBrush = new VisualBrush();

    DrawingVisual drawingVisual = new DrawingVisual();
    DrawingContext drawingContext = drawingVisual.RenderOpen();

    using (drawingContext)
    {
        drawingContext.PushTransform(new ScaleTransform(1, 1));
        drawingContext.DrawRectangle(sourceBrush, null, new Rect(new Point(0, 0), new Point(screenWidth, screenHeight)));
    }
    renderTarget.Render(drawingVisual);

    PngBitmapEncoder pngEncoder = new PngBitmapEncoder();
    pngEncoder.Frames.Add(BitmapFrame.Create(renderTarget));

    Byte[] _imageArray;

    using (MemoryStream outputStream = new MemoryStream())
    {
        pngEncoder.Save(outputStream);
        _imageArray …
Run Code Online (Sandbox Code Playgroud)

c# wpf screenshot

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

Linq IEnumerable <IGrouping <string,Class >>返回List <Class>

我怎样才能将以下陈述改回来 List<DocumentData>

IEnumerable<IGrouping<string, DocumentData>> documents = 
                 documentCollection.Select(d => d).GroupBy(g => g.FileName);
Run Code Online (Sandbox Code Playgroud)

目标是获得应该小于documentCollection的List.FileName包含重复项,因此我想确保我没有重复的名称.

我也试过以下但它仍然提供重复的文件名

documentCollection = 
    documentCollection.GroupBy(g => g.FileName).SelectMany(d => d).ToList();
Run Code Online (Sandbox Code Playgroud)

c# linq

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

图像的 WPF 内存问题

我似乎遇到了一些大的内存消耗问题。当我第一次加载包含 gridview 和 observablecollection 的 wpf 应用程序时,该应用程序大约为 10mb。

当我单击 gridview 中的一个项目时,它会打开另一个窗口,其中包含一个图像控件,该控件传递一个 base64 字符串,然后我将其转换为 BitmapImage

然后应用程序从 10mb 跳到大约 123mb。原始图像大小为 64k,但我所有存储的图像都是 base64 字符串,我将其转换回 byte[] 然后转换为 BitmapImage。是的,我的意思是这样做。

当我关闭窗口时,没有一个 ram 被释放。我什至尝试过调用 GC。

我使用下面的代码将base64图像变成

var bitmapImage = new BitmapImage();
bitmapImage.BeginInit();
bitmapImage.CacheOption = BitmapCacheOption.None;
bitmapImage.StreamSource = new SIO.MemoryStream(imageBytes);
bitmapImage.EndInit();
return bitmapImage;
Run Code Online (Sandbox Code Playgroud)

然后被分配给 Image.Source

c# wpf

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

引导模式标题宽度问题中的数据表

当我将scrollY 添加到部分视图中的数据表时,标题会被压缩到屏幕的左侧。当我单击标题进行排序时,它们正确扩展至 100%。使用滚动器选项并向下滚动足够远也会触发列的正确渲染。

在此输入图像描述

查看每个列标题的宽度时,宽度设置为 0。执行上述操作之一后,宽度将被纠正为应有的样子。

从主视图触发以加载部分内容

$('a[data-target="#list-view-audits-modal"]').on('click', function (e) {
    e.preventDefault();
    $.ajax({
        type: "GET",
        url: "../Home/GetAudits",
        success: function (data) {
            $('body').append(data); //this adds the modal called below
            $('#list-audits-modal').modal('toggle')
        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            WebUI.handleError(XMLHttpRequest, textStatus, errorThrown);
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

现在在部分视图中我调用以下命令来转换表格

$(function () {
var dt = $('#table-audits-results').DataTable({
    order: [[0, "desc"]],
    buttons: ['csv'],
    scrollY: 200,
    scroller: true,
    responsive: true
    });
});
Run Code Online (Sandbox Code Playgroud)

我已经搜索并尝试了很多在其他帖子中找到的东西,但到目前为止还没有解决这个问题。我认为这与它在局部视图中的转换有关?

更新1

好吧,看来这是一个问题,因为模态还没有尺寸。为了测试这一点,我延迟了转换数据表的触发器,并且标头现在是正确的。

现在我需要弄清楚如何在模态具有大小时触发此操作,以便用户看不到标准表并观看它转换为数据表。

更新2

我已尝试以下操作,但您仍然会在转换之前看到大量数据加载

$(document).on('show.bs.modal', '#list-audits-modal', function () {
    alert('triggered');
    var dt = $('#table-audits-results').DataTable({
        order: [[0, …
Run Code Online (Sandbox Code Playgroud)

css model-view-controller jquery datatables

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

TemplateField中的ASP.NET CheckBox

试图让CheckBox在TemplateField中工作,但是当我输入runat ="server"时,它告诉我服务器标签没有很好地形成,但当我删除它时,它希望我把它放回去.

<asp:TemplateField HeaderText="CheckBox Test" ItemStyle-HorizontalAlign="Center" SortExpression="CheckBoxTest">
    <ItemTemplate>
        <asp:CheckBox ID="cbTest" runat="server" Checked="<%# Eval("cbTest") == DBNull.Value ? false : Convert.ToBoolean(Eval("cbTest")) %>" Width="100px" Enabled="false" />
    </ItemTemplate>
    <EditItemTemplate>
        <asp:CheckBox ID="cbTest2" runat="server" Checked="<%# Eval("cbTest") == DBNull.Value ? false : Convert.ToBoolean(Eval("cbTest")) %>" Width="100px" Enabled="true" />
    </EditItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)

c# asp.net

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