Nicht alle Codepfade geben ein Wert zurück?

Ich bekomme den Fehler, dass nicht alle Codepfade einen Wert zurück geben "Form1.GetKugel()".

Wenn ich das in else stehende so hinstelle ohne else funktioniert es einwandfrei..

ich habe gerade erst angefangen zu lernen und es ist hoffe ich nur ein dämlicher Anfängerfehler :D

private struct Kugel
        {
            public double radius, sg;
        }
        private double gew;
        private Kugel GetKugel()
        {
            
            if (textBox1.Text == "")
            {
                MessageBox.Show("Bitte trage einen Wert ein", "Hinweis", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
            }
            else if (textBox1.Text.Length > 0)
            {
                MessageBox.Show("Bitte trage einen gültigen Wert ein", "Hinweis", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                textBox1.Clear();
            }
            else
            {
                Kugel kug;
                kug.radius = Convert.ToDouble(textBox1.Text) / 2;
                if (radioButton1.Checked) kug.sg = 1.4D;
                else if (radioButton2.Checked) kug.sg = 2.7D;
                else if (radioButton3.Checked) kug.sg = 3.0D;
                else if (radioButton4.Checked) kug.sg = 7.87D;
                else kug.sg = 11.3D;
                return kug;  
            }
             
        }
Computer, programmieren, C Sharp, Visual Studio
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.