小编Nat*_*han的帖子

SQLite重置主键字段

我在SQLite中有几个表,我试图弄清楚如何重置自动递增的数据库字段.

我读到DELETE FROM tablename应删除所有内容并将自动增量字段重置为0,但是当我这样做时它只删除数据.插入新记录后,自动增量会在删除之前从中断处继续.

我的ident字段属性如下:

  • 字段类型:integer
  • 字段标志:PRIMARY KEY,AUTOINCREMENT,UNIQUE

我在SQLite Maestro中构建表并且我在SQLite Maestro中执行DELETE语句也一样重要吗?

任何帮助都会很棒.

sql sqlite

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

SQLite修改列

我需要修改SQLite数据库中的列,但由于数据库已经在生产中,我必须以编程方式执行此操作.根据我的研究,我发现为了做到这一点,我必须做到以下几点.

  • 使用新架构创建新表
  • 将数据从旧表复制到新表
  • 放旧桌子
  • 将新表重命名为旧表名

对于应该相对容易的事情而言,这似乎是一项荒谬的工作量.有没有更简单的方法?我需要做的就是更改现有列的约束并为其指定默认值.

sqlite alter-table

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

SQLite如果列存在

我想知道在SQLite中检查列和索引是否有一个很好的IF NOT EXISTS,或者我是否需要恢复整个数据库模式并对其进行验证?

database sqlite

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

将通用List <string>绑定到ComboBox

我有一个ComboBox,我想绑定一个通用的List.任何人都可以看到为什么下面的代码不起作用?绑定源中包含数据,但它不会填充ComboBox数据源.

FillCbxProject(DownloadData Down)
{
  BindingSource bindingSource = new BindingSource();
  bindingSource.DataSource = Down.ProjectList;
  cbxProjectd.DataSource = bindingSource;
}
Run Code Online (Sandbox Code Playgroud)

旁注:传递一个类的实例是不是很糟糕?

谢谢!

c# data-binding binding winforms

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

将Winforms控件带到前面

除了control.BringToFront()之外还有其他方法可以将控件带到前面吗?我在用户控件上有一系列标签,当我尝试将其中一个标签放在前面时,它无法正常工作.我甚至已经完成所有控件的循环并将它们全部发送回去,除了我感兴趣的那个并且它没有改变一件事.

以下是将标签添加到用户控件的方法

private void AddUserLabel()
{
    UserLabel field = new UserLabel();
    ++fieldNumber;

    field.Name = "field" + fieldNumber.ToString();         

    field.Top = field.FieldTop + fieldNumber;
    field.Left = field.FieldLeft + fieldNumber;
    field.Height = field.FieldHeight;
    field.Width = field.FieldWidth;
    field.RotationAngle = field.FieldRotation;
    field.Barcode = field.BarCoded;
    field.HumanReadable = field.HumanReadable;
    field.Text = field.FieldText;
    field.ForeColor = Color.Black;

    field.MouseDown += new MouseEventHandler(label_MouseDown);
    field.MouseUp += new MouseEventHandler(label_MouseUp);
    field.MouseMove += new MouseEventHandler(label_MouseMove);

    userContainer.Controls.Add(field);

    SendLabelsToBack(); //Send All labels to back

    userContainer.Controls[field.FieldName].BringToFront();
}
Run Code Online (Sandbox Code Playgroud)

这是将所有这些发送到后面的方法.

private void SendLabelsToBack()
{
    foreach (UserLabel lbl in userContainer.Controls)
    { …
Run Code Online (Sandbox Code Playgroud)

c# controls winforms

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

C#反射和获取属性

我有以下虚拟类结构,我试图找出如何从PeopleList中的类People的每个实例获取属性.我知道如何从People的单个实例中获取属性,但在我的生活中不能知道如何从PeopleList获取它.我确信这真的很简单,但是有人能指出我正确的方向吗?

public class Example
{
    public class People
    {
        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }

        private int _age;
        public int Age
        {
            get { return _age; }
            set { _age = value; }
        }

        public People()
        {

        }

        public People(string name, int age)
        {
            this._name = name;
            this._age = age;
        }
    }

    public class PeopleList : List<People>
    {
        public static void DoStuff()
        {
             PeopleList newList = new …
Run Code Online (Sandbox Code Playgroud)

c# reflection properties

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

C#创建对齐网格功能

我正在尝试创建一些在运行时使用的对齐网格功能,但我遇到了捕捉部分的问题.我已成功在面板上绘制了一个虚线网格,但是当我向面板添加标签控件时,如何将标签的左上角捕捉到最近的点?

谢谢

c# runtime winforms

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

WPF工具提示绑定

我只有两个星期的WPF,所以这可能是一个微不足道的问题.我有一个集合"CellList",它有一些我希望绑定到的属性,ToolTip所以当我将鼠标悬停在CellList显示的当前实例的标签信息上时.我怎么做?我理解简单的绑定,这也许是简单的绑定,但我无法绕过它.下面是我的XAML标签.有人可以向我解释我是如何做到这一点的.

<HierarchicalDataTemplate>
      <ListBox ItemsSource="{Binding CellList}">
           <ListBox.ItemTemplate>
               <DataTemplate>
                 <Label Content=" " Height="20" Width="15" Background="{Binding Path=ExptNameBkg, Converter={StaticResource ExptNameToBrushConverter}}"                                                   BorderBrush="Black" BorderThickness="1" >
                  </Label>  
              </DataTemplate>                                    
            </ListBox.ItemTemplate>   
       </ListBox>
</HierarchicalDataTemplate>
Run Code Online (Sandbox Code Playgroud)

谢谢.

data-binding wpf tooltip hierarchicaldatatemplate

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

C#Lambda表达速度

之前我没有使用过很多lambda表达式,我遇到了一个案例,我认为我可以使用一个.我有一个约19,000条记录的自定义列表,我需要查看列表中是否存在记录,因此不是编写一堆循环或使用linq来查看列表,我决定尝试这样做:

for (int i = MinX; i <= MaxX; ++i)
{
    tempY = MinY;

    while (tempY <= MaxY)
    {
        bool exists = myList.Exists(item => item.XCoord == i && item.YCoord == tempY);

        ++tempY;
    }
}
Run Code Online (Sandbox Code Playgroud)

唯一的问题是执行需要大约9到11秒.我做错了什么,这只是我不应该使用这样的表达式的情况?

谢谢.

编辑:抱歉.我应该详细说明.我正在创建一个带有for和while循环的记录列表,并检查myList中是否存在该记录.这是我能想到的唯一方法.我会重新评估它,看看我带来了什么.

c# lambda

8
推荐指数
3
解决办法
1955
查看次数

C#Generics和Winform

是否可以将泛型类型T传递给winform的实例,以便T在整个表单中可用?

c# generics winforms

8
推荐指数
2
解决办法
2744
查看次数