小编Irs*_*had的帖子

一旦显示表单,DataGridViewComboBoxCell.DataSource将设置为null

我在表单的事件处理程序中添加了一个DataGridViewComboBoxColumna DataGridView,LoadDataGridViewComboBoxCell在列中设置了每个的DataSource .但是,一旦显示表单,每个的DataSource DataGridViewComboBoxCell都已设置为null.这是我用来填充列及其单元格的代码:

DataGridViewComboBoxColumn comboCol;

comboCol = new DataGridViewComboBoxColumn();
comboCol.Name = "ComboCol";
comboCol.HeaderText = "Combo Column";
comboCol.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;

this.dgv.Columns.Add(comboCol);

for (int i = 0; i < dgv.Rows.Count; i++)
{
    // This datatable is actually populated here!
    DataTable myData = PopulatedDataTable(dgv.Rows[i].Cells["info"].Value); 

    DataGridViewComboBoxCell DCC = new DataGridViewComboBoxCell();

    DCC = (DataGridViewComboBoxCell)dgv.Rows[i].Cells["CombolCol"];
    DCC.DataSource = myData;

    DCC.DisplayMember = "Association"; // Association is a column in myData
    DCC.ValueMember = "Association";
}

dgv.Columns["association"].Visible = false; …
Run Code Online (Sandbox Code Playgroud)

c# datagridview winforms datagridviewcomboboxcell

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

TextBlock滚动在WPF中不起作用

我想让我的TextBlock可滚动,但我不能让它工作.也许问题在于StackPanel

所以这是代码:

 <Grid Margin="3">
        <Grid.RowDefinitions>
            <RowDefinition Height="152*" />
            <RowDefinition Height="86*" />
            <RowDefinition Height="67*" />
        </Grid.RowDefinitions>

        <ListBox x:Name="lstItems" Margin="3,6,3,0" ItemsSource="{Binding Source={StaticResource rssData}}"
                 SelectedIndex="0">
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <Image Width="20" Margin="3" Source="{Binding XPath=enclosure/@url}" />
                        <TextBlock Margin="3" VerticalAlignment="Center" Text="{Binding XPath=title}" FontWeight="Bold" />
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

        <StackPanel Grid.Row="1" Orientation="Vertical" DataContext="{Binding ElementName=lstItems, Path=SelectedItem}" Grid.RowSpan="2">
            <StackPanel.ScrollOwner>
                <ScrollViewer />
            </StackPanel.ScrollOwner>
            <TextBlock Margin="3" FontSize="13" FontWeight="Bold" Text="{Binding XPath=title, Path=InnerText}" />
            <TextBlock Margin="3" Opacity="0.72" Text="{Binding XPath=pubDate}" />
            <ScrollViewer>
                <TextBlock ScrollViewer.CanContentScroll="True" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Auto" Margin="3" FontStyle="Italic" Text="{Binding …
Run Code Online (Sandbox Code Playgroud)

c# wpf textblock

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

在Windows应用程序中的notifyicon图标上显示文本

我正在创建一个Windows应用程序.在这个应用程序中,我正在使用notifyicon并最小化我的应用程序到系统托盘.在我点击按钮的代码中,我在后台处理一些事情并每2秒返回一个整数值.我需要显示价值Notifyicon.

谁能帮我???

c# windows notifyicon winforms windows-applications

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

如何使用EF 6.0中的代码优先方法从sql表中删除列?

错误地,我在数据库“ Named”中添加了一个列,doj如果我现在想使用代码优先方法从表中删除该列,该怎么办。

我已经尝试过了

1-从模型中删除列定义。
2-删除迁移历史记录。
3-添加迁移
4-更新数据库。

但是仍然没有反映在数据库中吗?我在哪里弄错了?

sql asp.net-mvc entity-framework

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

如何将对象转换为泛型

如果我在C#中从数据库中获取一些值,它们就是类型对象.现在我想转换这些值以将typesafe它们加载到我的对象中,该对象代表datarow或多或少.所以我认为为扩展对象创建一个通用的扩展方法会很好.

所以我构建了以下内容:

public static T ConvertToType<T>(this object value)
{
   T returnValue = default(T);
   if (value != DBNull.Value)
   {
      returnValue = (T)value;
   }

   return returnValue;
}
Run Code Online (Sandbox Code Playgroud)

所以我可以使用它来转换给定的不同值datarow,如果数据库存储null值,我得到默认类型.

例如:

foreach (DataRow row in myTable.Rows)
{
   MyClass myObject = new MyClass();
   myObject.Id = row["ID"].ConvertToType<int>();
}
Run Code Online (Sandbox Code Playgroud)

这适用于编译时,但似乎不可能将对象转换int为例如.所以我认为所有的值类型都必须手动处理.

所以我扩展了第一个代码块:

public static T ConvertToType<T>(this object value)
{
   T returnValue = default(T);
   if (value != DBNull.Value)
   {
      if (wert is int)
      {
        rueckgabe = Convert.ToInt32(wert);
      }
      //else …
Run Code Online (Sandbox Code Playgroud)

c# type-conversion

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

如何验证CodeDOM中的命名空间名称?

我使用SE中的CodeDOM找到了类名验证方法,我用它:

System.CodeDom.Compiler.CodeGenerator.IsValidLanguageIndependentIdentifier(string value)

通过此链接:是否有.NET函数来验证类名?

但是,类名不允许'.' (OEM期间)名称空间可以是这样的: System.Linq例如,允许'.'.在寻找Regex用于验证命名空间名称的选项或循环之前,我想知道.NET中是否有任何方法可用于此任务.

编辑:

实际情况是,我有一个来自.用户可以从文本框中提供类名和命名空间.对于该类名和命名空间,我将提供生成的代码.如果用户输入SomeClass作为类名,Some.Namespace作为名称空间,则生成的代码将为:

namespace Some.Namespace   
{   
  class SomeClass{}   
}
Run Code Online (Sandbox Code Playgroud)

为此,我需要验证用户输入的这两个名称.

c# codedom namespaces validating

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

如何在c#中以更通用的方式编写这些方法?

我有以下类层次结构:

EstadoBaseMO (父)

  • EstadoSAMO(EstadoBaseMO child)
  • EstadoGesDocMO(EstadoBaseMO child)

SolicitudBasePresenter(父)

  • SolicitudGesDocPresenter(SolicitudBasePresenter child)
  • SolicitudSAPresenter(SolicitudBasePresenter child)

EstadoBaseBO(父)

  • EstadoGesDocBO(EstadoBaseBO child)
  • EstadoSABO(EstadoBaseBO child)

我需要实现一个调用的方法SaveNewDetailStates,用下面的实施SolicitudBasePresente

public bool SaveNewDetailStates(List<EstadoBaseMO> estados)
    {
        bool result = true;

        if (estados.Any())
        {
            try
            {
                EstadoGesDocBO bo = new EstadoGesDocBO();

                foreach (var estado in estados)
                {

                    var savedState = bo.Insert(estado);
                    result &= ((savedState != null) && (savedState.Id != estado.Id));
                }
            }
            catch (Exception ex)
            {
                result = false;
            }
        }
        return result;
    }
Run Code Online (Sandbox Code Playgroud)

SolicitudGesDocPresenter.SaveNewDetailStates 履行

public bool …
Run Code Online (Sandbox Code Playgroud)

c# generics polymorphism

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

self.viewController.webView stringByEvaluatingJavaScriptFromString不起作用

NSString* jsString = [NSString stringWithFormat:@"alert('ok');"];[self.viewController.webView stringByEvaluatingJavaScriptFromString:jsString];
Run Code Online (Sandbox Code Playgroud)

我在cordova appdelegate.m中写了它!

uiwebview ios cordova

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

打开文件 - 安全警告

操作系统: Vista Business 64-BIT
编码: .NET和第三方EXE
问题: 安全性

我已经下载了curl.exe来帮助我从亚马逊加载产品信息.Curl.exe已经过预编译,不是.NET应用程序,因此我对使用curl构建进行任何更改感到不舒服.

关于这个问题.

当我执行CURL时,我得到这个对话框:

说: 打开文件 - 安全警告无法验证发布者.您确定要运行此软件吗?运行或取消

无论是手动还是以编程方式运行软件,都会出现此错误.

当我手动使用这个软件时,我可以处理这个问题,但我正在尝试自动化一个以编程方式运行它的进程,所以我想要禁止这个对话框.

在研究这个时,我得到了很多关于IE设置调整的信息...但是我没有从我的浏览器运行任何东西,只是在windows中启动exe,所以这不是问题.

我还看到很多关于将不同域和服务器添加到允许列表的信息.这是在我自己的盒子(C:\ curl.exe)上本地运行,所以这也不是问题.

我是我正在运行此框的管理员.

所以关于这一点的信息非常少.

编程说明:

我通过.NET运行这个文件,如下所示:

string cmd = string.Empty;

cmd += @"--location --user username:userpass -C - ";
cmd += @"--digest -k https://assoc-datafeeds-na.amazon.com/datafeed/getFeed?filename=";
cmd += FeedName + ".gz ";
cmd += @"-o " + FeedFileFolder + FeedName + ".gz";

System.Diagnostics.Process proc; // Declare New Process
System.Diagnostics.ProcessStartInfo procInfo = new System.Diagnostics.ProcessStartInfo(); 

procInfo.UseShellExecute = true;  //If this is false, only .exe's can be run. …
Run Code Online (Sandbox Code Playgroud)

.net windows security

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

如何将DataGridViewComboBoxColumn绑定到OnChange事件(C#)

我有一个标准DataGridView,我的最后一栏是DataGridViewComboBoxColumn.我想添加一个事件,以便当该列中任何行的选定索引发生更改时,会触发一个事件并将该数据保存到db.

我在这个问题上挣扎了一个小时左右,找不到任何会引发这种情况的事件......

任何帮助,将不胜感激!!!

c# events datagridview datagridviewcombobox

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