|
拡張メソッドの勉強のため 試しに作っていましたが 上手くいきません。
(1)の行でエラーになります。 メソッド グループ 'LengthByte' を非デリゲート型 'int' に変換することはできません。このメソッドを呼び出すことはできません。 とエラー内容が出ますが 非デリゲート型intの意味がわかりません。 わかる方お願いいたします。
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 WindowsFormsApplication3 {
static class String {
public static int LengthByte(this string Str) { byte[] bytesData; string StringCode = "Shift_JIS";
bytesData = System.Text.Encoding.GetEncoding(StringCode).GetBytes(Str);
int rtn = bytesData.Count(); return rtn; } } public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) {
}
private void button1_Click(object sender, EventArgs e) { string a = "aiueo"; int b = 0;
b = a.Length;
b= a.LengthByte; // (1)
} } }
|