小编lem*_*unk的帖子

WPF迭代数据网格

使用Visual Studio 2012 ulti使用WPF C#.NET4.5.

旧winforms代码:

foreach (DataGridViewRow paretoRow in ParetoGrid.Rows)
{
       if ((Convert.ToInt32(paretoRow.Cells["CurrentPareto"].Value) < (Convert.ToInt32(paretoRow.Cells["NewPareto"].Value))))
       {
              paretoRow.Cells["pNew"].Value = downArrow
       }
}
Run Code Online (Sandbox Code Playgroud)

你可以看到我循环的每一行我检查一个特定的单元格,如果是,我然后填充另一个单元格.这是我以前用过很多次的好的winforms代码......但是.切换到WPF与我之前假设的有很多不同.

DataGrid不包含该Row属性.相反,我认为你需要使用:

DataGridRow paretoRow in paretogrid.Items
Run Code Online (Sandbox Code Playgroud)

但我现在仍然不知道谁将获得这个细胞.

所以我的问题是,是否有语法更改要执行,如果是这样的话?或者我开始相信WPF中的数据网格比使用对象操作更多,因此不需要使用称为"行"的属性,如果是这种情况,我应该知道在这个例子中应该使用什么逻辑/语法?

感谢您的耐心等待,想想当我回家度假时,我会做一些WPF挖掘,看看它实际上有多么不同.

c# wpf datagrid

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

WPF添加datagrid图像列可能吗?

使用C#.Net 4.5,Visual Studio 2012 Ulti,WPF.

我有一些旧的win-forms代码,我想在这个新的WPF应用程序中做.

代码如下:

DataGridViewImageCell pNew = new DataGridViewImageCell();

ParetoGrid.Columns.Add(new DataGridViewImageColumn() { CellTemplate = pNew, FillWeight = 1, HeaderText = "pNew", Name = "pNew", Width = 30 });

ParetoGrid.Columns["pNew"].DisplayIndex = 18;
Run Code Online (Sandbox Code Playgroud)

3行代码添加可以处理图像的列.在WPF中,我看到它有点不同.我需要添加"图像列"吗?或者WPF列是否支持图像?还是有另外3个线性解决方案,只是不同的语法?

谢谢你的帮助

c# wpf datagrid

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

Nopcommerce更新实体问题

使用NopCommerce 3.8,Visual Studio 2015 proff.

我创建了一个插件,负责对我的Web API进行静态调用,将不同的数据库暴露给Nop.

这个过程是通过一个nop Task运行的,它成功地将数据拉回来,我可以按照我的意愿逐步操作和操作,到目前为止没有任何问题.

当我尝试更新产品表上的记录时出现问题,我执行更新...但没有任何变化,没有变化,没有错误.

我相信这是由于Context不知道我新实例化的产品对象,但是我在我需要做的与我的特定例子相关的事情上画了一个空白.

类似的问题通常引用作为方法调用参数一部分的"模型"对象,"模型"具有ToEntity似乎是堆栈中类似问题的答案的方法.

但是我的示例ToEntity可能没有类/方法,因为我的参数实际上是产品列表.在这里澄清我的代码.

RestClient.cs中的方法

public async Task<List<T>> GetAsync()
    {
        try
        {
            var httpClient = new HttpClient();

            var json = await httpClient.GetStringAsync(ApiControllerURL);

            var taskModels = JsonConvert.DeserializeObject<List<T>>(json);

            return taskModels;
        }
        catch (Exception e)
        {
            return null;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我的服务类中的方法

public async Task<List<MWProduct>> GetProductsAsync()
    {
        RestClient<MWProduct> restClient = new RestClient<MWProduct>(ApiConst.Products);
        var productsList = await restClient.GetAsync();

        InsertSyncProd(productsList.Select(x => x).ToList());
        return productsList;
    }
 private void InsertSyncProd(List<MWProduct> inserted)
    {
        var model = …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework nopcommerce

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

c#cast错误(infinte值....什么?)

问题我可以忽视,但这个问题让我非常恼火.我试图从数据集中获取一个值,然后用它来做一些计算.在数据集中它被视为一个对象,所以我需要将它转换为int或double.由于某种原因,我得到了一个让我紧张的愚蠢错误.继承人的代码.

private void SpendsAnalysis()
    {
        float tempQty = 0;
        float tempPrice = 0;
        double tempTot = 0;
        double total = 0;

        foreach (DataGridViewRow row in dataGridView1.Rows)
        {
            tempQty = (float)row.Cells["Qty"].Value;
            tempPrice = (float)row.Cells["Unit"].Value;

            tempTot = tempQty * tempPrice;
            total += tempTot;
        }

        textBox7.Text = total.ToString();
    }
Run Code Online (Sandbox Code Playgroud)

抛出:"指定的演员阵容无效." (System.InvalidCastException)在转换表单时,必须小于inifnite.这是我得到的恼人错误.现在我从我的数据集中获取数据,该数据集从存储过程中获取数据.我相信"数量"字段类型是货币(是的,为什么数量货币哈哈,而不是我的表!).在我的datagrid视图中它看起来像1.000,这是由于类型转换?我该怎么纠正这个?提前谢谢了!

c# casting dataset winforms

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

sql获取信息,但顺序错误

嗨伙计们我在sql中有以下查询

SELECT 
a1 
FROM 
dbo.myProductNames 
WHERE
 keycode = 40  OR keycode = 28 OR keycode = 32 OR keycode = 50
Run Code Online (Sandbox Code Playgroud)

a1 =我需要表格中的信息的名称,以便按照我要求的顺序输出其查询的名称,所以我需要40先成为28然后再打开.

原因是我的代码读取结果并存储在一个数组中,然后用于在表单上显示.

SQL查询来自的表具有以num顺序存储的信息,因此将首先读取28等.

正如我所说,我需要按照我在where子句中输入的顺序获取信息.

我正在考虑与嵌套的Select语句有关,尽管我从未尝试嵌套选择.

或者,有一个简单的方法吗?

任何帮助都会很棒!

提前谢谢了!

!!!!! UPDATE !!!!!

好的,这是解决方案,谢谢你们!

SqlCommand pgNameFill = new SqlCommand("SELECT  a1, CASE keycode WHEN @pg1 THEN 1 WHEN @pg2 THEN 2 WHEN @pg3 THEN 3 WHEN @pg4 THEN 4 END AS SortOrder FROM  dbo.myProductNames WHERE keycode IN (@pg1, @pg2, @pg3, @pg4) ORDER BY SortOrder ASC", conny1);

        pgNameFill.Parameters.AddWithValue("@pg1", pg1);
        pgNameFill.Parameters.AddWithValue("@pg2", pg2);
        pgNameFill.Parameters.AddWithValue("@pg3", …
Run Code Online (Sandbox Code Playgroud)

sql

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

SQL存储过程将参数传递给"order by"

使用Microsoft SQL Server Manager 2008.

制作一个"最终"选择Pareto列表中前10名的存储过程.但是我也希望再次运行它来找到底部10.

现在,我不是重新复制查询,而是试图查看是否有办法将参数传递给查询,该参数将从asc更改为desc.

有没有办法做到这一点,这将节省我复制代码?

CREATE PROCEDURE [dbo].[TopVRM]
@orderby varchar(255)
AS
SELECT Peroid1.Pareto FROM dbo.Peroid1
GROUP by Pareto ORDER by Pareto @orderby
Run Code Online (Sandbox Code Playgroud)

sql stored-procedures sql-order-by

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

报告查看器可能从表单传递图像?

使用visual Studio ultimate 2012.

我正在构建一个要在报表查看器中打印的报表.到目前为止,我有一堆文本框,通过参数从我的表单文本框中获取其值.

到目前为止一切正常.

然后我遇到了一个重大问题.如何将图像从我的表单上的图像传递到报表上的图像?1数据预先存在于数据库中我相信我可以作为参数调用图像(不确定).更大的问题是另一个形象.

另一个图像使用生成QR图像的外部API.此图像在运行时显示在我的表单上的图片框中.我没有将图像保存在我不想要的任何地方.但我明白我是否需要.有什么办法我可以将QR图像从我的表格上的图像框传递到我的报告图像框吗?

更新继承错误的代码:

Microsoft.Reporting.WinForms.ReportParameter rpIMG1 = new Microsoft.Reporting.WinForms.ReportParameter("paramQRimg", base64String);
Microsoft.Reporting.WinForms.ReportParameter rpIMG2 = new Microsoft.Reporting.WinForms.ReportParameter("paramQRMi", "image/png");

reportViewer1.LocalReport.SetParameters(new Microsoft.Reporting.WinForms.ReportParameter[] { rp1, rp2, rp3, rp4, rp5, rp6, rp7, rp8, rp9, rp10, rpIMG1, rpIMG2 });
Run Code Online (Sandbox Code Playgroud)

设置参数部分出错是它所说的全部:

An error occurred during local report processing.
Run Code Online (Sandbox Code Playgroud)

不知道为什么它不喜欢这个

c# qr-code image report

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

使用静态 HttpClient 刷新令牌

使用 VS 2017 .Net 4.5.2

我有以下课程

public static class MyHttpClient
{
    //fields
    private static Lazy<Task<HttpClient>> _Client = new Lazy<Task<HttpClient>>(async () =>
    {
        var client = new HttpClient();
        await InitClient(client).ConfigureAwait(false);
        return client;
    });

    //properties
    public static Task<HttpClient> ClientTask => _Client.Value;

    //methods
    private static async Task InitClient(HttpClient client)
    {
        //resey headers
        client.DefaultRequestHeaders.Clear();
        //Set base URL, NOT thread safe, which is why this method is only accessed via lazy initialization
        client.BaseAddress = new Uri(ConfigurationManager.AppSettings["baseAddress"]);//TODO: get from web.config? File? DB?
        //create new request to …
Run Code Online (Sandbox Code Playgroud)

c# rest dotnet-httpclient

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

xamarin广播接收器访问视图模型

注释: Xamarin 4.2.1.64,Visual Studio 2015 proff.

我创建了一个跨平台应用程序,可以在扫描条形码的Android设备上工作.

目前扫描时软件具有可选的输出模式,(缓冲区,键盘,剪贴板和意图).

目前使用键盘模式.

用户单击设备按钮扫描条形码,软件尝试转储到屏幕上的输入,如果不是它而不是选项卡(应用程序在启动时将焦点设置为输入字段).单击应用程序上的按钮时,它会调用我的服务查询一组数据并返回结果,然后更新结果列表供用户查看.

流程我需要改变

用户点击设备按钮扫描条形码,只有这次设备被设置为意图和广播,我的应用程序接收器接收广播,从意图中读取条形码并调用我的viewmodel以条形码更新字段.viewmodel现在将更改为检测字段更改并相应地运行该方法.

代码到目前为止

便携式Xaml

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         x:Class="StockCheckApp.Views.ScannerPage"
         xmlns:ViewModels="clr-namespace:StockCheckApp.ViewModels;assembly=StockCheckApp">
  <Label Text="{Binding MainText}" VerticalOptions="Center" HorizontalOptions="Center" />

  <StackLayout Orientation="Vertical">

<Entry x:Name="myBox" Text="{Binding UserInput, Mode=TwoWay}" />
<Button Text="Check Stock" Command="{Binding PostCommand}"/>

<ListView ItemsSource="{Binding StockList}"
        HasUnevenRows="True">
  <ListView.ItemTemplate>
    <DataTemplate>
      <ViewCell>
        <StackLayout Orientation="Vertical" Padding="12,6">
          <Label Text="{Binding St_Code}" FontSize="24" />
          <Label Text="{Binding St_Desc}" />
          <Label Text="{Binding Sl_Loc}" />
          <Label Text="{Binding Sa_Datetime}" />
          <Label Text="{Binding Sa_Qty}" />
        </StackLayout>
      </ViewCell>
    </DataTemplate>
  </ListView.ItemTemplate>
</ListView>
</StackLayout> …
Run Code Online (Sandbox Code Playgroud)

c# android mvvm xamarin

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

winforms面板重叠窃听

哦哇这个让我讨厌的哇.使用c#,winforms,visual studio 2010 ulti.

这是我的代码:

private void CheckBoxBranch_CheckedChanged(object sender, EventArgs e)
{   

    if (CheckBoxBranch.Checked == true)
    {
        panelBranch.Visible = true;
        //panelBranch.Parent = null;
        //PanelBuyer.Parent = null;
        //panelBranch.SendToBack();
        //PanelBuyer.SendToBack();
        PanelBuyer.Visible = false;
        CheckBoxBuyer.Checked = false;
        this.Refresh();
    }
    if (CheckBoxBranch.Checked == false)
    {
        panelBranch.Visible = false;
        this.Refresh();
    }

}

private void CheckBoxBuyer_CheckedChanged(object sender, EventArgs e)
{
    if (CheckBoxBuyer.Checked == true)
    {
        panelBranch.Visible = false;
        PanelBuyer.Visible = true;
        CheckBoxBranch.Checked = false;
        this.Refresh();
    }
    if (CheckBoxBuyer.Checked == false)
    {
        PanelBuyer.Visible = false;
        this.Refresh();
    } …
Run Code Online (Sandbox Code Playgroud)

c# panel parent-child

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