小编Jus*_*Ask的帖子

在与指定绑定约束匹配的类型上调用构造函数会引发异常

我正在尝试创建一个程序来删除由excel文件填充的DataSet中的列.它删除列的方式是将每列中的标题与每行中的第一个元素进行比较,并删除未出现在行中的任何字符串的列.我的问题是,我得到了一个我无法理解的奇怪错误.它说:

在类型'Excel_Retriever.MainWindow'上调用与指定绑定约束匹配的构造函数会引发异常.行号"3"和行位置"9".

我是C#和XAML的新手,非常感谢您解决此错误的任何帮助.谢谢!这是我的代码:

XAML:

<Window x:Class="Excel_Retriever.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid Name="ExcelGrid">
        <DataGrid ItemsSource="{Binding}" AutoGenerateColumns="True" Height="289"        HorizontalAlignment="Left" Margin="10,10,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="481" />
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

C#:

namespace Excel_Retriever
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            DataSet excel = GetDataTableFromExcel("C:\\Users\\Sweet Lou\\Desktop\\Adjusted research info.xlsx", "Research");
            //dataGrid1.DataContext = excel.Tables[0];
            DataSet ignoreds = Ignore_Names(excel);
            dataGrid1.DataContext = ignoreds.Tables[0];
        }

        public DataSet GetDataTableFromExcel(string FilePath, string strTableName)
        {
            try
            {
                OleDbConnection con = new OleDbConnection("Provider= Microsoft.ACE.OLEDB.12.0;Data Source=" + FilePath + "; Extended …
Run Code Online (Sandbox Code Playgroud)

c# wpf ado.net xaml exception-handling

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

在给定开始,结束和圆心(圆)点的位置找到弧的中点

我正在寻找一些关于如何找到弧线中点的帮助.我有起点和终点,圆心和半径.我在网上到处搜索,无法找到我可以在任何地方转换成代码的答案.如果有人有任何想法,请告诉我.以下图片是我想要找到的(假设已经找到了圆心).

找中点?

c# trigonometry

5
推荐指数
0
解决办法
6062
查看次数

将位图数组转换为字节数组

我有一个Bitmaps数组,我试图将其转换为字节数组,其中字节数组的每个索引代表一个Bitmap.我在弄清楚如何做到这一点时遇到了一些麻烦.如果有人有任何建议,请告诉我.谢谢!

private void ConvertBitmapToBytes(Bitmap[] BitmapArray)
{
    byte[][] BitmapBytes = new byte[BitmapArray.Length][];
    ImageConverter convert = new ImageConverter();
    for (int i = 0; i < BitmapArray.Length; i++)
    {
        BitmapBytes[i] = new byte[BitmapArray.Length];
        BitmapBytes[i][i] = convert.ConvertTo(BitmapArray[i], typeof(byte[]));
    }
}
Run Code Online (Sandbox Code Playgroud)

c# arrays byte

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

错误:声明不声明任何内容

这是一个非常业余的问题,我确信这将是一个非常简单的答案,但我似乎无法弄清楚问题.我有一个带有相应.cpp文件的头文件,但出于某种原因,每当我尝试使用g ++编译时,我都会收到错误:

声明没有声明任何内容

我很确定问题是我没有初始化文件中的(唯一)变量,但我不确定要将它初始化为什么.如果有人可以提供帮助,我将不胜感激!这是我的文件:

SymbolTableDictionary.h

#ifndef SymbolTable
#define SymbolTable
#include <new>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string>

using namespace std;

#pragma once

struct Symbol
{
    std::string Name;
    int Address;

    Symbol::Symbol()
    { }

    Symbol::Symbol(const string name, int address)
    {
        std::string sym(name);
        this->Name = sym;
        this->Address = address;
    }
};

extern map<std::string, Symbol> SymbolTable;

#endif
Run Code Online (Sandbox Code Playgroud)

SymbolTableDictionary.cpp

#include <new>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <map>

#include "SymbolTableDictionary.h"

using namespace std;

map<std::string, Symbol> SymbolTable;
Run Code Online (Sandbox Code Playgroud)

编译错误:

In file included …
Run Code Online (Sandbox Code Playgroud)

c++ linux g++

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

在音频上使用低通滤波器

我在 DSP 和滤波领域非常陌生。就像我一周前开始的一样。无论如何,我一直在寻找在我得到的一些数据上使用滤波器(低通、高通、陷波等)的方法。数据来自一个双精度数组,我可以在这个数组中获得超过 100 万个点。我试图过滤掉给定某个截止频率的声音,但无法使任何算法起作用。我一直在互联网上下并尝试了一堆不同的库和方法,但我无法得到任何结果。我偏爱 NAudio 库,因为它似乎拥有我需要的一切(通过 BiQuadFilter 类进行 FFT 和过滤)。我很确定我的问题是我极度缺乏获得所需输出的知识和数学。从我所读到的内容来看,我认为这个过程应该如何进行:

  1. 将数据插入 FFT 以将数据放入频域
  2. 将结果数据传递到过滤器(低、高、陷波)
  3. 从步骤 2 中的结果执行 IFFT 以返回时域
  4. 播放声音

这是过滤音频的正确方法吗?我可以将整个阵列推入 FFT 还是必须将其分解成更小的块?我如何处理我在 FFT 结果中得到的复数(即只使用实部并丢弃虚部,或者使用幅度和相位)?我真的不知道什么是“正确的方式”。

编辑

我终于让它工作了!这是我所做的:

        byte[] data = doubleArray.SelectMany(value => BitConverter.GetBytes(value)).ToArray();
        wms = new WaveMemoryStream(data, sampleRate, (ushort)audioBitsPerSample, (ushort)channels);
        WaveFileReader wfr = new WaveFileReader(wms);
        SampleChannel sample = new SampleChannel(wfr, false);
        LowPassSampleProvider sampleProvider = new LowPassSampleProvider(sample);
        WaveOutEvent player = new WaveOutEvent();
        player.Init(sampleProvider);
        player.Play();
Run Code Online (Sandbox Code Playgroud)

doubleArray 是我的加速度计数据的数组,目前拥有 100 万个点,每个点都在 1.84 左右......

WaveMemoryStream是我在另一篇文章中找到的课程

LowPassSampleProvider 是我创建的一个类,它实现了 ISampleProvider 并将样本传递给 BiQuadFilter.LowPassFilter 函数。

c# audio fft naudio lowpass-filter

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

标签 统计

c# ×4

ado.net ×1

arrays ×1

audio ×1

byte ×1

c++ ×1

exception-handling ×1

fft ×1

g++ ×1

linux ×1

lowpass-filter ×1

naudio ×1

trigonometry ×1

wpf ×1

xaml ×1