我正在使用Windows窗体在C#中创建一个应用程序,我想完全换掉Windows窗体中的所有内容并用其他东西替换它.有没有方便的方法呢?
示例:我有一个菜单,当我点击"开始"时,我希望菜单消失并开始游戏.我没有使用XNA或类似的东西,这是整个项目的重点.
是否有一种快速简单的方法将整个字符串列表转换为浮点数或整数,并将它们添加到F#中类似于此?
foreach(string s in list)
{
sum += int.Parse(s);
}
Run Code Online (Sandbox Code Playgroud) 我目前正在制作我自己的非常基本的通用列表类(以便更好地理解预定义的列表类如何工作).我遇到的唯一问题是我无法像通常那样使用" System.Collections.Generic.List" 来访问数组中的元素.
GenericList<type> list = new GenericList<type>();
list.Add(whatever);
Run Code Online (Sandbox Code Playgroud)
这工作正常,但在尝试访问我希望能够编写的"任何"时:
list[0];
Run Code Online (Sandbox Code Playgroud)
但这显然不起作用,因为我在代码中明显遗漏了一些东西,我需要添加到我完全正常工作的泛型类中是什么?
在阅读之前,我需要检查一行是否包含字符串,我想使用while循环来执行此操作
while(reader.ReadLine() != null)
{
array[i] = reader.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
这显然不起作用,那么我该如何选择呢?
有没有办法确定具有基类指针的子类的类型?
我已经在.h文件中的类构造函数中声明了一个指针
baseclass *screen;
Run Code Online (Sandbox Code Playgroud)
在构造函数中
screen = new childclass();
Run Code Online (Sandbox Code Playgroud)
让我们说baseclass有5个不同的子类,在我的程序中,我将指针切换到指向各种子对象,如何确定屏幕当前指向的对象的类型?
我想创建一个函数,它将一个整数列表作为参数,并比较每个值并返回最大值.在C#中,我只是遍历列表中的每个值,将最大值保存到变量并返回它,我希望F#的工作方式类似,但语法对我来说有点不合适,这就是我的代码.max2也是一个比较2个值并返回最大值的函数.
let max_list list =
let a = 0 : int
match list with
| head :: tail -> (for i in list do a = max2 i a) a
| [] -> failwith "sry";;
Run Code Online (Sandbox Code Playgroud) 我对c#很新,刚刚开始使用数据库.我在我的项目文件夹中创建了一个本地数据库,当我单击数据库上的属性时,我得到"连接字符串":
Data Source="C:\Users\Documents\Visual Studio 2012\Projects\DataBaseTest\MyDatabase#1.sdf"
Run Code Online (Sandbox Code Playgroud)
我的问题很简单,如何使用该行创建连接字符串?因为某种原因写这会产生错误.
SqlConnection con = new SqlConnection(Data Source="C:\Users\Documents\Visual Studio
2012\Projects\DataBaseTest\MyDatabase#1.sdf");
Run Code Online (Sandbox Code Playgroud) 我有一个txt文件,其中包含数字和逗号分隔的行,例如.
4324,1dd3,444
4324,1fd3,444
4324,1as3,442
我有一个函数,它接受一个字符串作为参数,我想检查每一行,如果该字符串等于该行的第二个"字",所以第一行将是"1dd3".如果该参数匹配单词我想将行的第三个单词添加到字符串列表中(或者以其他方式保存它以便稍后在代码中使用它).
在C#中,我只是遍历列表并在逗号上使用这样的分割
while(reader.Peek > 0) //while txt file still has lines left to read
{
split the row...
compare it to argument
add to list of strings
}
Run Code Online (Sandbox Code Playgroud)
但我对F#相当新,并且在这里找不到正确的语法和/或方法,任何帮助都将不胜感激.
我使用一个简单的表单测试一些数据库压缩代码,以便将数据添加到数据库.当我单击AddBtn时,我想要的是将一些值从文本字段插入到我的数据库中,但我得到此错误"初始化字符串的格式不符合从索引0开始的规范".问题似乎在SqlCeConnection行中.
完整的代码示例:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.Sql;
using System.Data.SqlClient;
using System.Data.SqlServerCe;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void AddBtn_Click(object sender, EventArgs e)
{
SqlCeConnection con = new SqlCeConnection(@"C:\Users\Name\Documents\Visual Studio 2012\Projects\DataBaseTest\MyDatabase#1.sdf");
try {
con.Open();
SqlCeCommand cmd = con.CreateCommand();
cmd.CommandText = "insert into test ([ID], [OrderID], [KundID]) values('"+textBox1.Text+"','"+textBox2.Text+"','"+textBox3.Text+"')";
try {
cmd.ExecuteNonQuery();
}
catch (Exception ex) {
MessageBox.Show(ex.Message); …Run Code Online (Sandbox Code Playgroud) c# ×6
f# ×4
c#-to-f# ×3
database ×2
.net ×1
c++ ×1
generic-list ×1
generics ×1
guard-clause ×1
inline ×1
streamreader ×1