C# Wpf转让-拍卖

C# Wpf转让-拍卖,c#,sql,wpf,C#,Sql,Wpf,有人能帮我做作业吗。我是这方面的新手,有很多事情我不明白。我现在要去学校学习编程,但对我来说速度很慢,教授给我们布置了作业,但不幸的是我不知道如何解决它。有人能帮我吗?求你了 任务如下: “拍卖” 创建用于拍卖的WPF应用程序,该应用程序具有以下内容: -该应用程序包括用于管理通过数据库实现的用户的系统。它必须至少有两个用户(管理员和普通用户)。 -拍卖从数据库中获取数据 -在拍卖的主窗口中,它显示了目前正在拍卖的所有产品。对于每种产品,它都会显示有关价格、上次报价和最后一位投标人的数据。 -未

有人能帮我做作业吗。我是这方面的新手,有很多事情我不明白。我现在要去学校学习编程,但对我来说速度很慢,教授给我们布置了作业,但不幸的是我不知道如何解决它。有人能帮我吗?求你了

任务如下:

“拍卖” 创建用于拍卖的WPF应用程序,该应用程序具有以下内容:
-该应用程序包括用于管理通过数据库实现的用户的系统。它必须至少有两个用户(管理员和普通用户)。
-拍卖从数据库中获取数据
-在拍卖的主窗口中,它显示了目前正在拍卖的所有产品。对于每种产品,它都会显示有关价格、上次报价和最后一位投标人的数据。
-未登录的用户有权观看所有关于拍卖的内容,但无权出价。
-普通用户仅对价格进行投标
-管理员有权输入新产品并删除现有产品。输入新产品时,必须输入其起始价格、名称和其他信息。

拍卖应如何运作:
进入产品时,该产品的拍卖开始,倒计时开始。每次拍卖有2分钟时间完成。只要用户出价,拍卖的时间就会重新开始,并得到额外的2分钟。当用户出价购买产品时,产品的价格每增加一美元。当拍卖结束时,最后一个出价的用户被标记为胜利者,拍卖结束,其他用户可以使用它

我试图创建一些我的代码,但我得到了不同的错误

一些错误消息,但还有更多错误消息:'AukcijskaProdaja.MainWindow'不包含'button1_-Click'的定义,并且找不到接受'AukcijskaProdaja.MainWindow'类型的第一个参数的扩展方法'button1_-Click'(是否缺少using指令或程序集引用?);当前上下文c:\users\denis\documents\visual studio中不存在名称“conn”;命名空间“AukcijskaProdaja”中不存在类型或命名空间名称“AukcijaDataSet”(是否缺少程序集引用?)

xaml:
Title=“MainWindow”Height=“350”Width=“525”Loaded=“Window\u Loaded”>

C#:
名称空间AukcijskaProdaja
{
/// 
///MainWindow.xaml的交互逻辑
/// 
公共部分类主窗口:窗口
{
公共主窗口()
{
初始化组件();
}
已加载私有无效窗口(对象发送器、路由目标)
{
aukcijskaporodaja.AukcijaDataSet AukcijaDataSet=((aukcijskaporodaja.AukcijaDataSet)(this.FindResource(“AukcijaDataSet”));
//将数据加载到表Aukcija_baze中。您可以根据需要修改此代码。
aukcijkaprodaja.AukcijaDataSetTableAdapters.Aukcija_bazeTableAdapter Aukcija_bazeTableAdapter=新的aukcijkaprodaja.AukcijaDataSetTableAdapters.Aukcija_bazeTableAdapter();
aukcijaDataSetAukcija_bazeTableAdapter.Fill(aukcijaDataSet.Aukcija_baze);
System.Windows.Data.CollectionViewSource aukcija_bazeViewSource=((System.Windows.Data.CollectionViewSource)(this.FindResource(“aukcija_bazeViewSource”));
aukcija_bazeViewSource.View.MoveCurrentToFirst();
}
public void BindMyData()
{
尝试
{
conn.Open();
SqlCommand comm=新的SqlCommand(“从Aukcija_baze中选择*”,康涅狄格州);
数据集ds=新数据集();
SqlDataAdapter da=新的SqlDataAdapter(comm);
da.填充(ds);
aukcija_bazeDataGrid.ItemsSource=ds.Tables[0].DefaultView;
}
捕获(例外情况除外)
{
Show(例如Message.ToString());
}
最后
{
康涅狄格州关闭();
}
BindMyData();
}
私有无效按钮1\u单击(对象发送者,路由目标)
{
尝试
{
conn.Open();
SqlCommand comm=新的SqlCommand(“插入Aukcija_baze值(“+AukcijaId.Text+”,“+ArtikalName.Text+”,“,conn”);
comm.ExecuteNonQuery();
}
捕获(例外情况除外)
{
Show(例如Message.ToString());
}
最后
{
康涅狄格州关闭();
BindMyData();
}
{
DispatcherTimer DispatcherTimer=新DispatcherTimer();
dispatchermer.Tick+=新事件处理程序(dispatchermer\u Tick);
Dispatchermer.Interval=新的时间跨度(0,0,1);
dispatchermer.Start();
}
}
私有void Dispatcher_Tick(对象发送方,事件参数e)
{
}
}

}

您似乎没有包含所有代码,但我将指出我看到的错误:

  • 在“BindMyData”和单击处理程序中,使用“conn”变量。此变量从不声明。一般来说,SqlConnections应该是短期的,因此它可能应该在使用它的每个函数内部声明,而不是在类级别声明。无论如何,您需要在这些函数可以看到它的某个范围内声明它

  • 在Window_Loaded中,有一个AukcijaDataSet类型的变量,它没有发布任何代码。鉴于我认为您不打算重写数据集类,这个(以及其他类似的行,如AukcijaDataSetTableAdapters)应该使用标准的.NET名称(如DataSet)。如果确实要重写这些类,请确保在项目中有命名空间的using语句和引用(如果这些类位于外部库中)

  • 您正在设置文本框的“DataContext”属性,并将DataGrid绑定到整个窗口数据上下文
    namespace AukcijskaProdaja
    {
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }
    
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            AukcijskaProdaja.AukcijaDataSet aukcijaDataSet = ((AukcijskaProdaja.AukcijaDataSet)(this.FindResource("aukcijaDataSet")));
            // Load data into the table Aukcija_baze. You can modify this code as needed.
            AukcijskaProdaja.AukcijaDataSetTableAdapters.Aukcija_bazeTableAdapter aukcijaDataSetAukcija_bazeTableAdapter = new AukcijskaProdaja.AukcijaDataSetTableAdapters.Aukcija_bazeTableAdapter();
            aukcijaDataSetAukcija_bazeTableAdapter.Fill(aukcijaDataSet.Aukcija_baze);
            System.Windows.Data.CollectionViewSource aukcija_bazeViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("aukcija_bazeViewSource")));
            aukcija_bazeViewSource.View.MoveCurrentToFirst();
        }
    
        public void BindMyData()
        {
            try
        {
            conn.Open();
            SqlCommand comm = new SqlCommand("SELECT * FROM Aukcija_baze", conn);
            DataSet ds = new DataSet();
            SqlDataAdapter da = new SqlDataAdapter(comm);
            da.Fill(ds);
            aukcija_bazeDataGrid.ItemsSource = ds.Tables[0].DefaultView;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message.ToString());
        }
        finally
        {
            conn.Close();
        }
    
        BindMyData();
        }
    
        private void button1_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                conn.Open();
                SqlCommand comm = new SqlCommand("INSERT INTO Aukcija_baze VALUES(" + AukcijaId.Text + ",'" + ArtikalName.Text + "',", conn);
                comm.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message.ToString());
            }
            finally
            {
                conn.Close();
                BindMyData();
            }
    
            {
                DispatcherTimer dispatcherTimer = new DispatcherTimer();
                dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
                dispatcherTimer.Interval = new TimeSpan(0, 0, 1);
                dispatcherTimer.Start();
    
            }
    
        }
        private void dispatcherTimer_Tick(object sender, EventArgs e)
        {
    
        }
    }