有人能帮我完成学校作业吗。我完全是初学者,有很多事情我不明白。我现在要去学校学习编程,但是它对我来说非常缓慢,教授给我们布置了作业,但不幸的是,我不知道如何解决它。有人能帮我吗?请。
任务如下:
“拍卖”
创建用于拍卖的WPF应用程序,其内容如下:
-application包括通过数据库实现的用户管理系统。它必须至少有两个用户(管理员和普通用户)。
-Auctions从数据库中获取数据
-in主要的拍卖窗口,它展示的是所有目前正在拍卖的产品。对于每一个产品,它显示了价格,最后报价和最后投标人的数据。
没有登录的-User有权观看所有关于拍卖的内容,但无权出价。
-normal用户只有权竞价
-administrator有权输入新产品并删除现有产品。所有的东西,当新的产品是输入时,它必须把他的起始价格,名称和其他信息。
拍卖应如何运作:
当产品进入的那一刻,该产品的拍卖就开始了,倒计时也开始了。每次拍卖都有2分钟的时间来完成。只要用户出价,拍卖的时间就会重新开始,并获得额外的2分钟。当用户对产品进行投标时,产品的价格每增加一美元。当拍卖结束时,最后一个出价的用户被标记为赢家,拍卖结束,其他用户停止使用它。
我已经尝试创建一些我的代码,但我得到了不同的错误。
一些错误信息,但还有更多:'AukcijskaProdaja.MainWindow‘不包含'button1_Click’的定义,并且也找不到接受‘AukcijskaProdaja.MainWindow’类型的第一个参数的扩展方法'AukcijaDataSet‘(您是缺少一个使用指令还是程序集引用?);当前上下文c中不存在名称'conn’:\user\denis\AukcijaDataSet\visual studio;命名空间‘AukcijaDataSet’在名称空间'AukcijskaProdaja‘中不存在(您缺少程序集引用吗?)
xaml:
Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
<my:AukcijaDataSet x:Key="aukcijaDataSet" />
<CollectionViewSource x:Key="aukcija_bazeViewSource" Source="{Binding Path=Aukcija_baze, Source={StaticResource aukcijaDataSet}}" />
<Grid>
<DataGrid AutoGenerateColumns="False" EnableRowVirtualization="True" Height="136" HorizontalAlignment="Left" ItemsSource="{Binding}" Margin="78,22,0,0" Name="aukcija_bazeDataGrid" RowDetailsVisibilityMode="VisibleWhenSelected" VerticalAlignment="Top" Width="391">
<DataGrid.Columns>
<DataGridTextColumn x:Name="aukcijaIdColumn" Binding="{Binding Path=AukcijaId}" Header="Aukcija Id" Width="SizeToHeader" />
<DataGridTextColumn x:Name="artikalNameColumn" Binding="{Binding Path=ArtikalName}" Header="Artikal Name" Width="SizeToHeader" />
<DataGridTextColumn x:Name="cijenaColumn" Binding="{Binding Path=Cijena}" Header="Cijena" Width="SizeToHeader" />
</DataGrid.Columns>
</DataGrid>
<Label Content="AukcijaId" Height="23" HorizontalAlignment="Left" Margin="69,268,0,0" Name="label1" VerticalAlignment="Top" Width="83" />
<Label Content="ArtikalName" Height="24" HorizontalAlignment="Left" Margin="154,267,0,0" Name="label2" VerticalAlignment="Top" Width="68" />
<TextBox Height="23" HorizontalAlignment="Left" Margin="69,240,0,0" Name="AukcijaId" VerticalAlignment="Top" Width="63" DataContext="{Binding Path=aukcijaIdColumn}" />
<TextBox Height="23" HorizontalAlignment="Left" Margin="154,240,0,0" Name="ArtikalName" VerticalAlignment="Top" Width="68" DataContext="{Binding Path=artikalNameColumn}"/>
<Button Content="Ponuda" Height="26" HorizontalAlignment="Left" Margin="242,240,0,0" Name="button1" VerticalAlignment="Top" Width="68" Click="button1_Click" />
<Label Content="Vrijeme" HorizontalAlignment="Left" Margin="378,240,0,148" Name="label4" Width="81" />
<Label Content="Unesi ponudu" Height="28" HorizontalAlignment="Left" Margin="69,206,0,0" Name="label5" VerticalAlignment="Top" Width="83" />
<ListBox Height="38" HorizontalAlignment="Left" Margin="78,153,0,0" Name="listBox1" VerticalAlignment="Top" Width="391" />
</Grid>
C#:
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)
{
}
}}
发布于 2014-03-12 16:46:12
您似乎没有包含所有代码,但我将指出我看到的错误:
您的列绑定乍一看看起来还不错,而且总体上您肯定是在正确的轨道上。不过,它确实需要大量的清理,适当的MVVM设置将有所帮助。
你也应该尝试谷歌的错误,正如评论指出的。每当您看到“无法找到”或“不存在”类型错误时,这意味着您丢失了一个解密(在变量的情况下)或一个缺失的类定义或引用(如果它位于类型名称上)。
https://stackoverflow.com/questions/22347568
复制相似问题