私は C# にかなり慣れていませんが、何らかの理由で、0 と 0 の境界を持つ部分文字列に対して IndexOutOfRangeException がスローされています。
すべてが使用されている場所で定義されていることを確認するためにテストしたため、スコープの問題ではないと思います。
非常に単純なアナグラムジェネレーターを作成しようとしています:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
string[] d = { "Apple", "Bass", "Cat", "Dog", "Ear", "Flamingo", "Gear", "Hat", "Infidel", "Jackrabbit", "Kangaroo", "Lathargic", "Monkey", "Nude", "Ozzymandis", "Python", "Queen", "Rat", "Sarcastic", "Tungston", "Urine", "Virginia", "Wool", "Xylophone", "Yo-yo", "Zebra", " "};
string var;
int len = 0;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var = textBox2.Text;
//textBox1.Text = d[2];
for (int y = 0; y <= var.Length; y++)
{
for (int x = 0; x <= d.Length; x++)
{
if (d[x].Substring(0, 0).ToUpper() == var.Substring(len, len).ToUpper())
{
textBox1.Text = textBox1.Text + "\n" + d[x];
len = len + 1;
}
}
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
}
}
}